# -*- coding: utf-8 -*-
# Auto-generated by Stone, do not modify.
# @generated
# flake8: noqa
# pylint: skip-file
from __future__ import unicode_literals
from stone.backends.python_rsrc import stone_base as bb
from stone.backends.python_rsrc import stone_validators as bv

from dropbox import common
from dropbox import file_requests
from dropbox import files
from dropbox import sharing
from dropbox import team
from dropbox import team_common
from dropbox import team_policies
from dropbox import users_common

class AccessMethodLogInfo(bb.Union):
    """
    Indicates the method in which the action was performed.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar WebSessionLogInfo AccessMethodLogInfo.admin_console: Admin console
        session details.
    :ivar ApiSessionLogInfo AccessMethodLogInfo.api: Api session details.
    :ivar WebSessionLogInfo AccessMethodLogInfo.content_manager: Content manager
        session details.
    :ivar SessionLogInfo AccessMethodLogInfo.end_user: End user session details.
    :ivar WebSessionLogInfo AccessMethodLogInfo.enterprise_console: Enterprise
        console session details.
    :ivar WebSessionLogInfo AccessMethodLogInfo.sign_in_as: Sign in as session
        details.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def admin_console(cls, val):
        """
        Create an instance of this class set to the ``admin_console`` tag with
        value ``val``.

        :param WebSessionLogInfo val:
        :rtype: AccessMethodLogInfo
        """
        return cls('admin_console', val)

    @classmethod
    def api(cls, val):
        """
        Create an instance of this class set to the ``api`` tag with value
        ``val``.

        :param ApiSessionLogInfo val:
        :rtype: AccessMethodLogInfo
        """
        return cls('api', val)

    @classmethod
    def content_manager(cls, val):
        """
        Create an instance of this class set to the ``content_manager`` tag with
        value ``val``.

        :param WebSessionLogInfo val:
        :rtype: AccessMethodLogInfo
        """
        return cls('content_manager', val)

    @classmethod
    def end_user(cls, val):
        """
        Create an instance of this class set to the ``end_user`` tag with value
        ``val``.

        :param SessionLogInfo val:
        :rtype: AccessMethodLogInfo
        """
        return cls('end_user', val)

    @classmethod
    def enterprise_console(cls, val):
        """
        Create an instance of this class set to the ``enterprise_console`` tag
        with value ``val``.

        :param WebSessionLogInfo val:
        :rtype: AccessMethodLogInfo
        """
        return cls('enterprise_console', val)

    @classmethod
    def sign_in_as(cls, val):
        """
        Create an instance of this class set to the ``sign_in_as`` tag with
        value ``val``.

        :param WebSessionLogInfo val:
        :rtype: AccessMethodLogInfo
        """
        return cls('sign_in_as', val)

    def is_admin_console(self):
        """
        Check if the union tag is ``admin_console``.

        :rtype: bool
        """
        return self._tag == 'admin_console'

    def is_api(self):
        """
        Check if the union tag is ``api``.

        :rtype: bool
        """
        return self._tag == 'api'

    def is_content_manager(self):
        """
        Check if the union tag is ``content_manager``.

        :rtype: bool
        """
        return self._tag == 'content_manager'

    def is_end_user(self):
        """
        Check if the union tag is ``end_user``.

        :rtype: bool
        """
        return self._tag == 'end_user'

    def is_enterprise_console(self):
        """
        Check if the union tag is ``enterprise_console``.

        :rtype: bool
        """
        return self._tag == 'enterprise_console'

    def is_sign_in_as(self):
        """
        Check if the union tag is ``sign_in_as``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_admin_console(self):
        """
        Admin console session details.

        Only call this if :meth:`is_admin_console` is true.

        :rtype: WebSessionLogInfo
        """
        if not self.is_admin_console():
            raise AttributeError("tag 'admin_console' not set")
        return self._value

    def get_api(self):
        """
        Api session details.

        Only call this if :meth:`is_api` is true.

        :rtype: ApiSessionLogInfo
        """
        if not self.is_api():
            raise AttributeError("tag 'api' not set")
        return self._value

    def get_content_manager(self):
        """
        Content manager session details.

        Only call this if :meth:`is_content_manager` is true.

        :rtype: WebSessionLogInfo
        """
        if not self.is_content_manager():
            raise AttributeError("tag 'content_manager' not set")
        return self._value

    def get_end_user(self):
        """
        End user session details.

        Only call this if :meth:`is_end_user` is true.

        :rtype: SessionLogInfo
        """
        if not self.is_end_user():
            raise AttributeError("tag 'end_user' not set")
        return self._value

    def get_enterprise_console(self):
        """
        Enterprise console session details.

        Only call this if :meth:`is_enterprise_console` is true.

        :rtype: WebSessionLogInfo
        """
        if not self.is_enterprise_console():
            raise AttributeError("tag 'enterprise_console' not set")
        return self._value

    def get_sign_in_as(self):
        """
        Sign in as session details.

        Only call this if :meth:`is_sign_in_as` is true.

        :rtype: WebSessionLogInfo
        """
        if not self.is_sign_in_as():
            raise AttributeError("tag 'sign_in_as' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccessMethodLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

AccessMethodLogInfo_validator = bv.Union(AccessMethodLogInfo)

class AccountCaptureAvailability(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    available = None
    # Attribute is overwritten below the class definition
    unavailable = None
    # Attribute is overwritten below the class definition
    other = None

    def is_available(self):
        """
        Check if the union tag is ``available``.

        :rtype: bool
        """
        return self._tag == 'available'

    def is_unavailable(self):
        """
        Check if the union tag is ``unavailable``.

        :rtype: bool
        """
        return self._tag == 'unavailable'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureAvailability, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureAvailability_validator = bv.Union(AccountCaptureAvailability)

class AccountCaptureChangeAvailabilityDetails(bb.Struct):
    """
    Granted/revoked option to enable account capture on team domains.

    :ivar team_log.AccountCaptureChangeAvailabilityDetails.new_value: New
        account capture availabilty value.
    :ivar team_log.AccountCaptureChangeAvailabilityDetails.previous_value:
        Previous account capture availabilty value. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: AccountCaptureAvailability (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: AccountCaptureAvailability (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureChangeAvailabilityDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureChangeAvailabilityDetails_validator = bv.Struct(AccountCaptureChangeAvailabilityDetails)

class AccountCaptureChangeAvailabilityType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureChangeAvailabilityType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureChangeAvailabilityType_validator = bv.Struct(AccountCaptureChangeAvailabilityType)

class AccountCaptureChangePolicyDetails(bb.Struct):
    """
    Changed account capture setting on team domain.

    :ivar team_log.AccountCaptureChangePolicyDetails.new_value: New account
        capture policy.
    :ivar team_log.AccountCaptureChangePolicyDetails.previous_value: Previous
        account capture policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: AccountCapturePolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: AccountCapturePolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureChangePolicyDetails_validator = bv.Struct(AccountCaptureChangePolicyDetails)

class AccountCaptureChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureChangePolicyType_validator = bv.Struct(AccountCaptureChangePolicyType)

class AccountCaptureMigrateAccountDetails(bb.Struct):
    """
    Account-captured user migrated account to team.

    :ivar team_log.AccountCaptureMigrateAccountDetails.domain_name: Domain name.
    """

    __slots__ = [
        '_domain_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_name=None):
        self._domain_name_value = bb.NOT_SET
        if domain_name is not None:
            self.domain_name = domain_name

    # Instance attribute type: str (validator is set below)
    domain_name = bb.Attribute("domain_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureMigrateAccountDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureMigrateAccountDetails_validator = bv.Struct(AccountCaptureMigrateAccountDetails)

class AccountCaptureMigrateAccountType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureMigrateAccountType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureMigrateAccountType_validator = bv.Struct(AccountCaptureMigrateAccountType)

class AccountCaptureNotificationEmailsSentDetails(bb.Struct):
    """
    Sent account capture email to all unmanaged members.

    :ivar team_log.AccountCaptureNotificationEmailsSentDetails.domain_name:
        Domain name.
    :ivar
        team_log.AccountCaptureNotificationEmailsSentDetails.notification_type:
        Account-capture email notification type.
    """

    __slots__ = [
        '_domain_name_value',
        '_notification_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_name=None,
                 notification_type=None):
        self._domain_name_value = bb.NOT_SET
        self._notification_type_value = bb.NOT_SET
        if domain_name is not None:
            self.domain_name = domain_name
        if notification_type is not None:
            self.notification_type = notification_type

    # Instance attribute type: str (validator is set below)
    domain_name = bb.Attribute("domain_name")

    # Instance attribute type: AccountCaptureNotificationType (validator is set below)
    notification_type = bb.Attribute("notification_type", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureNotificationEmailsSentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureNotificationEmailsSentDetails_validator = bv.Struct(AccountCaptureNotificationEmailsSentDetails)

class AccountCaptureNotificationEmailsSentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureNotificationEmailsSentType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureNotificationEmailsSentType_validator = bv.Struct(AccountCaptureNotificationEmailsSentType)

class AccountCaptureNotificationType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    actionable_notification = None
    # Attribute is overwritten below the class definition
    proactive_warning_notification = None
    # Attribute is overwritten below the class definition
    other = None

    def is_actionable_notification(self):
        """
        Check if the union tag is ``actionable_notification``.

        :rtype: bool
        """
        return self._tag == 'actionable_notification'

    def is_proactive_warning_notification(self):
        """
        Check if the union tag is ``proactive_warning_notification``.

        :rtype: bool
        """
        return self._tag == 'proactive_warning_notification'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureNotificationType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureNotificationType_validator = bv.Union(AccountCaptureNotificationType)

class AccountCapturePolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    all_users = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    invited_users = None
    # Attribute is overwritten below the class definition
    other = None

    def is_all_users(self):
        """
        Check if the union tag is ``all_users``.

        :rtype: bool
        """
        return self._tag == 'all_users'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_invited_users(self):
        """
        Check if the union tag is ``invited_users``.

        :rtype: bool
        """
        return self._tag == 'invited_users'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCapturePolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCapturePolicy_validator = bv.Union(AccountCapturePolicy)

class AccountCaptureRelinquishAccountDetails(bb.Struct):
    """
    Account-captured user changed account email to personal email.

    :ivar team_log.AccountCaptureRelinquishAccountDetails.domain_name: Domain
        name.
    """

    __slots__ = [
        '_domain_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_name=None):
        self._domain_name_value = bb.NOT_SET
        if domain_name is not None:
            self.domain_name = domain_name

    # Instance attribute type: str (validator is set below)
    domain_name = bb.Attribute("domain_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureRelinquishAccountDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureRelinquishAccountDetails_validator = bv.Struct(AccountCaptureRelinquishAccountDetails)

class AccountCaptureRelinquishAccountType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountCaptureRelinquishAccountType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountCaptureRelinquishAccountType_validator = bv.Struct(AccountCaptureRelinquishAccountType)

class AccountLockOrUnlockedDetails(bb.Struct):
    """
    Unlocked/locked account after failed sign in attempts.

    :ivar team_log.AccountLockOrUnlockedDetails.previous_value: The previous
        account status.
    :ivar team_log.AccountLockOrUnlockedDetails.new_value: The new account
        status.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: AccountState (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: AccountState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountLockOrUnlockedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountLockOrUnlockedDetails_validator = bv.Struct(AccountLockOrUnlockedDetails)

class AccountLockOrUnlockedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountLockOrUnlockedType, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountLockOrUnlockedType_validator = bv.Struct(AccountLockOrUnlockedType)

class AccountState(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    locked = None
    # Attribute is overwritten below the class definition
    unlocked = None
    # Attribute is overwritten below the class definition
    other = None

    def is_locked(self):
        """
        Check if the union tag is ``locked``.

        :rtype: bool
        """
        return self._tag == 'locked'

    def is_unlocked(self):
        """
        Check if the union tag is ``unlocked``.

        :rtype: bool
        """
        return self._tag == 'unlocked'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AccountState, self)._process_custom_annotations(annotation_type, field_path, processor)

AccountState_validator = bv.Union(AccountState)

class ActionDetails(bb.Union):
    """
    Additional information indicating the action taken that caused status
    change.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar MemberRemoveActionType ActionDetails.remove_action: Define how the
        user was removed from the team.
    :ivar TeamInviteDetails ActionDetails.team_invite_details: Additional
        information relevant when someone is invited to the team.
    :ivar JoinTeamDetails ActionDetails.team_join_details: Additional
        information relevant when a new member joins the team.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def remove_action(cls, val):
        """
        Create an instance of this class set to the ``remove_action`` tag with
        value ``val``.

        :param MemberRemoveActionType val:
        :rtype: ActionDetails
        """
        return cls('remove_action', val)

    @classmethod
    def team_invite_details(cls, val):
        """
        Create an instance of this class set to the ``team_invite_details`` tag
        with value ``val``.

        :param TeamInviteDetails val:
        :rtype: ActionDetails
        """
        return cls('team_invite_details', val)

    @classmethod
    def team_join_details(cls, val):
        """
        Create an instance of this class set to the ``team_join_details`` tag
        with value ``val``.

        :param JoinTeamDetails val:
        :rtype: ActionDetails
        """
        return cls('team_join_details', val)

    def is_remove_action(self):
        """
        Check if the union tag is ``remove_action``.

        :rtype: bool
        """
        return self._tag == 'remove_action'

    def is_team_invite_details(self):
        """
        Check if the union tag is ``team_invite_details``.

        :rtype: bool
        """
        return self._tag == 'team_invite_details'

    def is_team_join_details(self):
        """
        Check if the union tag is ``team_join_details``.

        :rtype: bool
        """
        return self._tag == 'team_join_details'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_remove_action(self):
        """
        Define how the user was removed from the team.

        Only call this if :meth:`is_remove_action` is true.

        :rtype: MemberRemoveActionType
        """
        if not self.is_remove_action():
            raise AttributeError("tag 'remove_action' not set")
        return self._value

    def get_team_invite_details(self):
        """
        Additional information relevant when someone is invited to the team.

        Only call this if :meth:`is_team_invite_details` is true.

        :rtype: TeamInviteDetails
        """
        if not self.is_team_invite_details():
            raise AttributeError("tag 'team_invite_details' not set")
        return self._value

    def get_team_join_details(self):
        """
        Additional information relevant when a new member joins the team.

        Only call this if :meth:`is_team_join_details` is true.

        :rtype: JoinTeamDetails
        """
        if not self.is_team_join_details():
            raise AttributeError("tag 'team_join_details' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ActionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ActionDetails_validator = bv.Union(ActionDetails)

class ActorLogInfo(bb.Union):
    """
    The entity who performed the action.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar UserLogInfo ActorLogInfo.admin: The admin who did the action.
    :ivar team_log.ActorLogInfo.anonymous: Anonymous actor.
    :ivar AppLogInfo ActorLogInfo.app: The application who did the action.
    :ivar team_log.ActorLogInfo.dropbox: Action done by Dropbox.
    :ivar ResellerLogInfo ActorLogInfo.reseller: Action done by reseller.
    :ivar UserLogInfo ActorLogInfo.user: The user who did the action.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    anonymous = None
    # Attribute is overwritten below the class definition
    dropbox = None
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def admin(cls, val):
        """
        Create an instance of this class set to the ``admin`` tag with value
        ``val``.

        :param UserLogInfo val:
        :rtype: ActorLogInfo
        """
        return cls('admin', val)

    @classmethod
    def app(cls, val):
        """
        Create an instance of this class set to the ``app`` tag with value
        ``val``.

        :param AppLogInfo val:
        :rtype: ActorLogInfo
        """
        return cls('app', val)

    @classmethod
    def reseller(cls, val):
        """
        Create an instance of this class set to the ``reseller`` tag with value
        ``val``.

        :param ResellerLogInfo val:
        :rtype: ActorLogInfo
        """
        return cls('reseller', val)

    @classmethod
    def user(cls, val):
        """
        Create an instance of this class set to the ``user`` tag with value
        ``val``.

        :param UserLogInfo val:
        :rtype: ActorLogInfo
        """
        return cls('user', val)

    def is_admin(self):
        """
        Check if the union tag is ``admin``.

        :rtype: bool
        """
        return self._tag == 'admin'

    def is_anonymous(self):
        """
        Check if the union tag is ``anonymous``.

        :rtype: bool
        """
        return self._tag == 'anonymous'

    def is_app(self):
        """
        Check if the union tag is ``app``.

        :rtype: bool
        """
        return self._tag == 'app'

    def is_dropbox(self):
        """
        Check if the union tag is ``dropbox``.

        :rtype: bool
        """
        return self._tag == 'dropbox'

    def is_reseller(self):
        """
        Check if the union tag is ``reseller``.

        :rtype: bool
        """
        return self._tag == 'reseller'

    def is_user(self):
        """
        Check if the union tag is ``user``.

        :rtype: bool
        """
        return self._tag == 'user'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_admin(self):
        """
        The admin who did the action.

        Only call this if :meth:`is_admin` is true.

        :rtype: UserLogInfo
        """
        if not self.is_admin():
            raise AttributeError("tag 'admin' not set")
        return self._value

    def get_app(self):
        """
        The application who did the action.

        Only call this if :meth:`is_app` is true.

        :rtype: AppLogInfo
        """
        if not self.is_app():
            raise AttributeError("tag 'app' not set")
        return self._value

    def get_reseller(self):
        """
        Action done by reseller.

        Only call this if :meth:`is_reseller` is true.

        :rtype: ResellerLogInfo
        """
        if not self.is_reseller():
            raise AttributeError("tag 'reseller' not set")
        return self._value

    def get_user(self):
        """
        The user who did the action.

        Only call this if :meth:`is_user` is true.

        :rtype: UserLogInfo
        """
        if not self.is_user():
            raise AttributeError("tag 'user' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ActorLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ActorLogInfo_validator = bv.Union(ActorLogInfo)

class AdminAlertCategoryEnum(bb.Union):
    """
    Alert category

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    account_takeover = None
    # Attribute is overwritten below the class definition
    data_loss_protection = None
    # Attribute is overwritten below the class definition
    information_governance = None
    # Attribute is overwritten below the class definition
    malware_sharing = None
    # Attribute is overwritten below the class definition
    massive_file_operation = None
    # Attribute is overwritten below the class definition
    na = None
    # Attribute is overwritten below the class definition
    threat_management = None
    # Attribute is overwritten below the class definition
    other = None

    def is_account_takeover(self):
        """
        Check if the union tag is ``account_takeover``.

        :rtype: bool
        """
        return self._tag == 'account_takeover'

    def is_data_loss_protection(self):
        """
        Check if the union tag is ``data_loss_protection``.

        :rtype: bool
        """
        return self._tag == 'data_loss_protection'

    def is_information_governance(self):
        """
        Check if the union tag is ``information_governance``.

        :rtype: bool
        """
        return self._tag == 'information_governance'

    def is_malware_sharing(self):
        """
        Check if the union tag is ``malware_sharing``.

        :rtype: bool
        """
        return self._tag == 'malware_sharing'

    def is_massive_file_operation(self):
        """
        Check if the union tag is ``massive_file_operation``.

        :rtype: bool
        """
        return self._tag == 'massive_file_operation'

    def is_na(self):
        """
        Check if the union tag is ``na``.

        :rtype: bool
        """
        return self._tag == 'na'

    def is_threat_management(self):
        """
        Check if the union tag is ``threat_management``.

        :rtype: bool
        """
        return self._tag == 'threat_management'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertCategoryEnum, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertCategoryEnum_validator = bv.Union(AdminAlertCategoryEnum)

class AdminAlertGeneralStateEnum(bb.Union):
    """
    Alert state

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    active = None
    # Attribute is overwritten below the class definition
    dismissed = None
    # Attribute is overwritten below the class definition
    in_progress = None
    # Attribute is overwritten below the class definition
    na = None
    # Attribute is overwritten below the class definition
    resolved = None
    # Attribute is overwritten below the class definition
    other = None

    def is_active(self):
        """
        Check if the union tag is ``active``.

        :rtype: bool
        """
        return self._tag == 'active'

    def is_dismissed(self):
        """
        Check if the union tag is ``dismissed``.

        :rtype: bool
        """
        return self._tag == 'dismissed'

    def is_in_progress(self):
        """
        Check if the union tag is ``in_progress``.

        :rtype: bool
        """
        return self._tag == 'in_progress'

    def is_na(self):
        """
        Check if the union tag is ``na``.

        :rtype: bool
        """
        return self._tag == 'na'

    def is_resolved(self):
        """
        Check if the union tag is ``resolved``.

        :rtype: bool
        """
        return self._tag == 'resolved'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertGeneralStateEnum, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertGeneralStateEnum_validator = bv.Union(AdminAlertGeneralStateEnum)

class AdminAlertSeverityEnum(bb.Union):
    """
    Alert severity

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    high = None
    # Attribute is overwritten below the class definition
    info = None
    # Attribute is overwritten below the class definition
    low = None
    # Attribute is overwritten below the class definition
    medium = None
    # Attribute is overwritten below the class definition
    na = None
    # Attribute is overwritten below the class definition
    other = None

    def is_high(self):
        """
        Check if the union tag is ``high``.

        :rtype: bool
        """
        return self._tag == 'high'

    def is_info(self):
        """
        Check if the union tag is ``info``.

        :rtype: bool
        """
        return self._tag == 'info'

    def is_low(self):
        """
        Check if the union tag is ``low``.

        :rtype: bool
        """
        return self._tag == 'low'

    def is_medium(self):
        """
        Check if the union tag is ``medium``.

        :rtype: bool
        """
        return self._tag == 'medium'

    def is_na(self):
        """
        Check if the union tag is ``na``.

        :rtype: bool
        """
        return self._tag == 'na'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertSeverityEnum, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertSeverityEnum_validator = bv.Union(AdminAlertSeverityEnum)

class AdminAlertingAlertConfiguration(bb.Struct):
    """
    Alert configurations

    :ivar team_log.AdminAlertingAlertConfiguration.alert_state: Alert state.
    :ivar team_log.AdminAlertingAlertConfiguration.sensitivity_level:
        Sensitivity level.
    :ivar team_log.AdminAlertingAlertConfiguration.recipients_settings:
        Recipient settings.
    :ivar team_log.AdminAlertingAlertConfiguration.text: Text.
    :ivar team_log.AdminAlertingAlertConfiguration.excluded_file_extensions:
        Excluded file extensions.
    """

    __slots__ = [
        '_alert_state_value',
        '_sensitivity_level_value',
        '_recipients_settings_value',
        '_text_value',
        '_excluded_file_extensions_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 alert_state=None,
                 sensitivity_level=None,
                 recipients_settings=None,
                 text=None,
                 excluded_file_extensions=None):
        self._alert_state_value = bb.NOT_SET
        self._sensitivity_level_value = bb.NOT_SET
        self._recipients_settings_value = bb.NOT_SET
        self._text_value = bb.NOT_SET
        self._excluded_file_extensions_value = bb.NOT_SET
        if alert_state is not None:
            self.alert_state = alert_state
        if sensitivity_level is not None:
            self.sensitivity_level = sensitivity_level
        if recipients_settings is not None:
            self.recipients_settings = recipients_settings
        if text is not None:
            self.text = text
        if excluded_file_extensions is not None:
            self.excluded_file_extensions = excluded_file_extensions

    # Instance attribute type: AdminAlertingAlertStatePolicy (validator is set below)
    alert_state = bb.Attribute("alert_state", nullable=True, user_defined=True)

    # Instance attribute type: AdminAlertingAlertSensitivity (validator is set below)
    sensitivity_level = bb.Attribute("sensitivity_level", nullable=True, user_defined=True)

    # Instance attribute type: RecipientsConfiguration (validator is set below)
    recipients_settings = bb.Attribute("recipients_settings", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    text = bb.Attribute("text", nullable=True)

    # Instance attribute type: str (validator is set below)
    excluded_file_extensions = bb.Attribute("excluded_file_extensions", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingAlertConfiguration, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingAlertConfiguration_validator = bv.Struct(AdminAlertingAlertConfiguration)

class AdminAlertingAlertSensitivity(bb.Union):
    """
    Alert sensitivity

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    high = None
    # Attribute is overwritten below the class definition
    highest = None
    # Attribute is overwritten below the class definition
    invalid = None
    # Attribute is overwritten below the class definition
    low = None
    # Attribute is overwritten below the class definition
    lowest = None
    # Attribute is overwritten below the class definition
    medium = None
    # Attribute is overwritten below the class definition
    other = None

    def is_high(self):
        """
        Check if the union tag is ``high``.

        :rtype: bool
        """
        return self._tag == 'high'

    def is_highest(self):
        """
        Check if the union tag is ``highest``.

        :rtype: bool
        """
        return self._tag == 'highest'

    def is_invalid(self):
        """
        Check if the union tag is ``invalid``.

        :rtype: bool
        """
        return self._tag == 'invalid'

    def is_low(self):
        """
        Check if the union tag is ``low``.

        :rtype: bool
        """
        return self._tag == 'low'

    def is_lowest(self):
        """
        Check if the union tag is ``lowest``.

        :rtype: bool
        """
        return self._tag == 'lowest'

    def is_medium(self):
        """
        Check if the union tag is ``medium``.

        :rtype: bool
        """
        return self._tag == 'medium'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingAlertSensitivity, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingAlertSensitivity_validator = bv.Union(AdminAlertingAlertSensitivity)

class AdminAlertingAlertStateChangedDetails(bb.Struct):
    """
    Changed an alert state.

    :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_name: Alert name.
    :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_severity: Alert
        severity.
    :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_category: Alert
        category.
    :ivar team_log.AdminAlertingAlertStateChangedDetails.alert_instance_id:
        Alert ID.
    :ivar team_log.AdminAlertingAlertStateChangedDetails.previous_value: Alert
        state before the change.
    :ivar team_log.AdminAlertingAlertStateChangedDetails.new_value: Alert state
        after the change.
    """

    __slots__ = [
        '_alert_name_value',
        '_alert_severity_value',
        '_alert_category_value',
        '_alert_instance_id_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 alert_name=None,
                 alert_severity=None,
                 alert_category=None,
                 alert_instance_id=None,
                 previous_value=None,
                 new_value=None):
        self._alert_name_value = bb.NOT_SET
        self._alert_severity_value = bb.NOT_SET
        self._alert_category_value = bb.NOT_SET
        self._alert_instance_id_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if alert_name is not None:
            self.alert_name = alert_name
        if alert_severity is not None:
            self.alert_severity = alert_severity
        if alert_category is not None:
            self.alert_category = alert_category
        if alert_instance_id is not None:
            self.alert_instance_id = alert_instance_id
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    alert_name = bb.Attribute("alert_name")

    # Instance attribute type: AdminAlertSeverityEnum (validator is set below)
    alert_severity = bb.Attribute("alert_severity", user_defined=True)

    # Instance attribute type: AdminAlertCategoryEnum (validator is set below)
    alert_category = bb.Attribute("alert_category", user_defined=True)

    # Instance attribute type: str (validator is set below)
    alert_instance_id = bb.Attribute("alert_instance_id")

    # Instance attribute type: AdminAlertGeneralStateEnum (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: AdminAlertGeneralStateEnum (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingAlertStateChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingAlertStateChangedDetails_validator = bv.Struct(AdminAlertingAlertStateChangedDetails)

class AdminAlertingAlertStateChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingAlertStateChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingAlertStateChangedType_validator = bv.Struct(AdminAlertingAlertStateChangedType)

class AdminAlertingAlertStatePolicy(bb.Union):
    """
    Policy for controlling whether an alert can be triggered or not

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    off = None
    # Attribute is overwritten below the class definition
    on = None
    # Attribute is overwritten below the class definition
    other = None

    def is_off(self):
        """
        Check if the union tag is ``off``.

        :rtype: bool
        """
        return self._tag == 'off'

    def is_on(self):
        """
        Check if the union tag is ``on``.

        :rtype: bool
        """
        return self._tag == 'on'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingAlertStatePolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingAlertStatePolicy_validator = bv.Union(AdminAlertingAlertStatePolicy)

class AdminAlertingChangedAlertConfigDetails(bb.Struct):
    """
    Changed an alert setting.

    :ivar team_log.AdminAlertingChangedAlertConfigDetails.alert_name: Alert
        Name.
    :ivar team_log.AdminAlertingChangedAlertConfigDetails.previous_alert_config:
        Previous alert configuration.
    :ivar team_log.AdminAlertingChangedAlertConfigDetails.new_alert_config: New
        alert configuration.
    """

    __slots__ = [
        '_alert_name_value',
        '_previous_alert_config_value',
        '_new_alert_config_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 alert_name=None,
                 previous_alert_config=None,
                 new_alert_config=None):
        self._alert_name_value = bb.NOT_SET
        self._previous_alert_config_value = bb.NOT_SET
        self._new_alert_config_value = bb.NOT_SET
        if alert_name is not None:
            self.alert_name = alert_name
        if previous_alert_config is not None:
            self.previous_alert_config = previous_alert_config
        if new_alert_config is not None:
            self.new_alert_config = new_alert_config

    # Instance attribute type: str (validator is set below)
    alert_name = bb.Attribute("alert_name")

    # Instance attribute type: AdminAlertingAlertConfiguration (validator is set below)
    previous_alert_config = bb.Attribute("previous_alert_config", user_defined=True)

    # Instance attribute type: AdminAlertingAlertConfiguration (validator is set below)
    new_alert_config = bb.Attribute("new_alert_config", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingChangedAlertConfigDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingChangedAlertConfigDetails_validator = bv.Struct(AdminAlertingChangedAlertConfigDetails)

class AdminAlertingChangedAlertConfigType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingChangedAlertConfigType, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingChangedAlertConfigType_validator = bv.Struct(AdminAlertingChangedAlertConfigType)

class AdminAlertingTriggeredAlertDetails(bb.Struct):
    """
    Triggered security alert.

    :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_name: Alert name.
    :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_severity: Alert
        severity.
    :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_category: Alert
        category.
    :ivar team_log.AdminAlertingTriggeredAlertDetails.alert_instance_id: Alert
        ID.
    """

    __slots__ = [
        '_alert_name_value',
        '_alert_severity_value',
        '_alert_category_value',
        '_alert_instance_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 alert_name=None,
                 alert_severity=None,
                 alert_category=None,
                 alert_instance_id=None):
        self._alert_name_value = bb.NOT_SET
        self._alert_severity_value = bb.NOT_SET
        self._alert_category_value = bb.NOT_SET
        self._alert_instance_id_value = bb.NOT_SET
        if alert_name is not None:
            self.alert_name = alert_name
        if alert_severity is not None:
            self.alert_severity = alert_severity
        if alert_category is not None:
            self.alert_category = alert_category
        if alert_instance_id is not None:
            self.alert_instance_id = alert_instance_id

    # Instance attribute type: str (validator is set below)
    alert_name = bb.Attribute("alert_name")

    # Instance attribute type: AdminAlertSeverityEnum (validator is set below)
    alert_severity = bb.Attribute("alert_severity", user_defined=True)

    # Instance attribute type: AdminAlertCategoryEnum (validator is set below)
    alert_category = bb.Attribute("alert_category", user_defined=True)

    # Instance attribute type: str (validator is set below)
    alert_instance_id = bb.Attribute("alert_instance_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingTriggeredAlertDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingTriggeredAlertDetails_validator = bv.Struct(AdminAlertingTriggeredAlertDetails)

class AdminAlertingTriggeredAlertType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminAlertingTriggeredAlertType, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminAlertingTriggeredAlertType_validator = bv.Struct(AdminAlertingTriggeredAlertType)

class AdminConsoleAppPermission(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default_for_listed_apps = None
    # Attribute is overwritten below the class definition
    default_for_unlisted_apps = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default_for_listed_apps(self):
        """
        Check if the union tag is ``default_for_listed_apps``.

        :rtype: bool
        """
        return self._tag == 'default_for_listed_apps'

    def is_default_for_unlisted_apps(self):
        """
        Check if the union tag is ``default_for_unlisted_apps``.

        :rtype: bool
        """
        return self._tag == 'default_for_unlisted_apps'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminConsoleAppPermission, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminConsoleAppPermission_validator = bv.Union(AdminConsoleAppPermission)

class AdminConsoleAppPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    allow = None
    # Attribute is overwritten below the class definition
    block = None
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    other = None

    def is_allow(self):
        """
        Check if the union tag is ``allow``.

        :rtype: bool
        """
        return self._tag == 'allow'

    def is_block(self):
        """
        Check if the union tag is ``block``.

        :rtype: bool
        """
        return self._tag == 'block'

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminConsoleAppPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminConsoleAppPolicy_validator = bv.Union(AdminConsoleAppPolicy)

class AdminEmailRemindersChangedDetails(bb.Struct):
    """
    Changed admin reminder settings for requests to join the team.

    :ivar team_log.AdminEmailRemindersChangedDetails.new_value: To.
    :ivar team_log.AdminEmailRemindersChangedDetails.previous_value: From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: AdminEmailRemindersPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: AdminEmailRemindersPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminEmailRemindersChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminEmailRemindersChangedDetails_validator = bv.Struct(AdminEmailRemindersChangedDetails)

class AdminEmailRemindersChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminEmailRemindersChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminEmailRemindersChangedType_validator = bv.Struct(AdminEmailRemindersChangedType)

class AdminEmailRemindersPolicy(bb.Union):
    """
    Policy for deciding whether team admins receive reminder emails for requests
    to join the team

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminEmailRemindersPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminEmailRemindersPolicy_validator = bv.Union(AdminEmailRemindersPolicy)

class AdminRole(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    billing_admin = None
    # Attribute is overwritten below the class definition
    compliance_admin = None
    # Attribute is overwritten below the class definition
    content_admin = None
    # Attribute is overwritten below the class definition
    limited_admin = None
    # Attribute is overwritten below the class definition
    member_only = None
    # Attribute is overwritten below the class definition
    reporting_admin = None
    # Attribute is overwritten below the class definition
    security_admin = None
    # Attribute is overwritten below the class definition
    support_admin = None
    # Attribute is overwritten below the class definition
    team_admin = None
    # Attribute is overwritten below the class definition
    user_management_admin = None
    # Attribute is overwritten below the class definition
    other = None

    def is_billing_admin(self):
        """
        Check if the union tag is ``billing_admin``.

        :rtype: bool
        """
        return self._tag == 'billing_admin'

    def is_compliance_admin(self):
        """
        Check if the union tag is ``compliance_admin``.

        :rtype: bool
        """
        return self._tag == 'compliance_admin'

    def is_content_admin(self):
        """
        Check if the union tag is ``content_admin``.

        :rtype: bool
        """
        return self._tag == 'content_admin'

    def is_limited_admin(self):
        """
        Check if the union tag is ``limited_admin``.

        :rtype: bool
        """
        return self._tag == 'limited_admin'

    def is_member_only(self):
        """
        Check if the union tag is ``member_only``.

        :rtype: bool
        """
        return self._tag == 'member_only'

    def is_reporting_admin(self):
        """
        Check if the union tag is ``reporting_admin``.

        :rtype: bool
        """
        return self._tag == 'reporting_admin'

    def is_security_admin(self):
        """
        Check if the union tag is ``security_admin``.

        :rtype: bool
        """
        return self._tag == 'security_admin'

    def is_support_admin(self):
        """
        Check if the union tag is ``support_admin``.

        :rtype: bool
        """
        return self._tag == 'support_admin'

    def is_team_admin(self):
        """
        Check if the union tag is ``team_admin``.

        :rtype: bool
        """
        return self._tag == 'team_admin'

    def is_user_management_admin(self):
        """
        Check if the union tag is ``user_management_admin``.

        :rtype: bool
        """
        return self._tag == 'user_management_admin'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AdminRole, self)._process_custom_annotations(annotation_type, field_path, processor)

AdminRole_validator = bv.Union(AdminRole)

class AlertRecipientsSettingType(bb.Union):
    """
    Alert recipients setting type

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    custom_list = None
    # Attribute is overwritten below the class definition
    invalid = None
    # Attribute is overwritten below the class definition
    none = None
    # Attribute is overwritten below the class definition
    team_admins = None
    # Attribute is overwritten below the class definition
    other = None

    def is_custom_list(self):
        """
        Check if the union tag is ``custom_list``.

        :rtype: bool
        """
        return self._tag == 'custom_list'

    def is_invalid(self):
        """
        Check if the union tag is ``invalid``.

        :rtype: bool
        """
        return self._tag == 'invalid'

    def is_none(self):
        """
        Check if the union tag is ``none``.

        :rtype: bool
        """
        return self._tag == 'none'

    def is_team_admins(self):
        """
        Check if the union tag is ``team_admins``.

        :rtype: bool
        """
        return self._tag == 'team_admins'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AlertRecipientsSettingType, self)._process_custom_annotations(annotation_type, field_path, processor)

AlertRecipientsSettingType_validator = bv.Union(AlertRecipientsSettingType)

class AllowDownloadDisabledDetails(bb.Struct):
    """
    Disabled downloads.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AllowDownloadDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AllowDownloadDisabledDetails_validator = bv.Struct(AllowDownloadDisabledDetails)

class AllowDownloadDisabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AllowDownloadDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

AllowDownloadDisabledType_validator = bv.Struct(AllowDownloadDisabledType)

class AllowDownloadEnabledDetails(bb.Struct):
    """
    Enabled downloads.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AllowDownloadEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AllowDownloadEnabledDetails_validator = bv.Struct(AllowDownloadEnabledDetails)

class AllowDownloadEnabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AllowDownloadEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

AllowDownloadEnabledType_validator = bv.Struct(AllowDownloadEnabledType)

class ApiSessionLogInfo(bb.Struct):
    """
    Api session.

    :ivar team_log.ApiSessionLogInfo.request_id: Api request ID.
    """

    __slots__ = [
        '_request_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 request_id=None):
        self._request_id_value = bb.NOT_SET
        if request_id is not None:
            self.request_id = request_id

    # Instance attribute type: str (validator is set below)
    request_id = bb.Attribute("request_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ApiSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ApiSessionLogInfo_validator = bv.Struct(ApiSessionLogInfo)

class AppBlockedByPermissionsDetails(bb.Struct):
    """
    Failed to connect app for member.

    :ivar team_log.AppBlockedByPermissionsDetails.app_info: Relevant application
        details.
    """

    __slots__ = [
        '_app_info_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 app_info=None):
        self._app_info_value = bb.NOT_SET
        if app_info is not None:
            self.app_info = app_info

    # Instance attribute type: AppLogInfo (validator is set below)
    app_info = bb.Attribute("app_info", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppBlockedByPermissionsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AppBlockedByPermissionsDetails_validator = bv.Struct(AppBlockedByPermissionsDetails)

class AppBlockedByPermissionsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppBlockedByPermissionsType, self)._process_custom_annotations(annotation_type, field_path, processor)

AppBlockedByPermissionsType_validator = bv.Struct(AppBlockedByPermissionsType)

class AppLinkTeamDetails(bb.Struct):
    """
    Linked app for team.

    :ivar team_log.AppLinkTeamDetails.app_info: Relevant application details.
    """

    __slots__ = [
        '_app_info_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 app_info=None):
        self._app_info_value = bb.NOT_SET
        if app_info is not None:
            self.app_info = app_info

    # Instance attribute type: AppLogInfo (validator is set below)
    app_info = bb.Attribute("app_info", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppLinkTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AppLinkTeamDetails_validator = bv.Struct(AppLinkTeamDetails)

class AppLinkTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppLinkTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

AppLinkTeamType_validator = bv.Struct(AppLinkTeamType)

class AppLinkUserDetails(bb.Struct):
    """
    Linked app for member.

    :ivar team_log.AppLinkUserDetails.app_info: Relevant application details.
    """

    __slots__ = [
        '_app_info_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 app_info=None):
        self._app_info_value = bb.NOT_SET
        if app_info is not None:
            self.app_info = app_info

    # Instance attribute type: AppLogInfo (validator is set below)
    app_info = bb.Attribute("app_info", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppLinkUserDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AppLinkUserDetails_validator = bv.Struct(AppLinkUserDetails)

class AppLinkUserType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppLinkUserType, self)._process_custom_annotations(annotation_type, field_path, processor)

AppLinkUserType_validator = bv.Struct(AppLinkUserType)

class AppLogInfo(bb.Struct):
    """
    App's logged information.

    :ivar team_log.AppLogInfo.app_id: App unique ID.
    :ivar team_log.AppLogInfo.display_name: App display name.
    """

    __slots__ = [
        '_app_id_value',
        '_display_name_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 app_id=None,
                 display_name=None):
        self._app_id_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        if app_id is not None:
            self.app_id = app_id
        if display_name is not None:
            self.display_name = display_name

    # Instance attribute type: str (validator is set below)
    app_id = bb.Attribute("app_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

AppLogInfo_validator = bv.StructTree(AppLogInfo)

class AppPermissionsChangedDetails(bb.Struct):
    """
    Changed app permissions.

    :ivar team_log.AppPermissionsChangedDetails.app_name: Name of the app.
    :ivar team_log.AppPermissionsChangedDetails.permission: Permission that was
        changed.
    :ivar team_log.AppPermissionsChangedDetails.previous_value: Previous policy.
    :ivar team_log.AppPermissionsChangedDetails.new_value: New policy.
    """

    __slots__ = [
        '_app_name_value',
        '_permission_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None,
                 app_name=None,
                 permission=None):
        self._app_name_value = bb.NOT_SET
        self._permission_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if app_name is not None:
            self.app_name = app_name
        if permission is not None:
            self.permission = permission
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    app_name = bb.Attribute("app_name", nullable=True)

    # Instance attribute type: AdminConsoleAppPermission (validator is set below)
    permission = bb.Attribute("permission", nullable=True, user_defined=True)

    # Instance attribute type: AdminConsoleAppPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: AdminConsoleAppPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppPermissionsChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AppPermissionsChangedDetails_validator = bv.Struct(AppPermissionsChangedDetails)

class AppPermissionsChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppPermissionsChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

AppPermissionsChangedType_validator = bv.Struct(AppPermissionsChangedType)

class AppUnlinkTeamDetails(bb.Struct):
    """
    Unlinked app for team.

    :ivar team_log.AppUnlinkTeamDetails.app_info: Relevant application details.
    """

    __slots__ = [
        '_app_info_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 app_info=None):
        self._app_info_value = bb.NOT_SET
        if app_info is not None:
            self.app_info = app_info

    # Instance attribute type: AppLogInfo (validator is set below)
    app_info = bb.Attribute("app_info", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppUnlinkTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AppUnlinkTeamDetails_validator = bv.Struct(AppUnlinkTeamDetails)

class AppUnlinkTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppUnlinkTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

AppUnlinkTeamType_validator = bv.Struct(AppUnlinkTeamType)

class AppUnlinkUserDetails(bb.Struct):
    """
    Unlinked app for member.

    :ivar team_log.AppUnlinkUserDetails.app_info: Relevant application details.
    """

    __slots__ = [
        '_app_info_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 app_info=None):
        self._app_info_value = bb.NOT_SET
        if app_info is not None:
            self.app_info = app_info

    # Instance attribute type: AppLogInfo (validator is set below)
    app_info = bb.Attribute("app_info", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppUnlinkUserDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

AppUnlinkUserDetails_validator = bv.Struct(AppUnlinkUserDetails)

class AppUnlinkUserType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AppUnlinkUserType, self)._process_custom_annotations(annotation_type, field_path, processor)

AppUnlinkUserType_validator = bv.Struct(AppUnlinkUserType)

class ApplyNamingConventionDetails(bb.Struct):
    """
    Applied naming convention.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ApplyNamingConventionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ApplyNamingConventionDetails_validator = bv.Struct(ApplyNamingConventionDetails)

class ApplyNamingConventionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ApplyNamingConventionType, self)._process_custom_annotations(annotation_type, field_path, processor)

ApplyNamingConventionType_validator = bv.Struct(ApplyNamingConventionType)

class AssetLogInfo(bb.Union):
    """
    Asset details.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar FileLogInfo AssetLogInfo.file: File's details.
    :ivar FolderLogInfo AssetLogInfo.folder: Folder's details.
    :ivar PaperDocumentLogInfo AssetLogInfo.paper_document: Paper document's
        details.
    :ivar PaperFolderLogInfo AssetLogInfo.paper_folder: Paper folder's details.
    :ivar ShowcaseDocumentLogInfo AssetLogInfo.showcase_document: Showcase
        document's details.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def file(cls, val):
        """
        Create an instance of this class set to the ``file`` tag with value
        ``val``.

        :param FileLogInfo val:
        :rtype: AssetLogInfo
        """
        return cls('file', val)

    @classmethod
    def folder(cls, val):
        """
        Create an instance of this class set to the ``folder`` tag with value
        ``val``.

        :param FolderLogInfo val:
        :rtype: AssetLogInfo
        """
        return cls('folder', val)

    @classmethod
    def paper_document(cls, val):
        """
        Create an instance of this class set to the ``paper_document`` tag with
        value ``val``.

        :param PaperDocumentLogInfo val:
        :rtype: AssetLogInfo
        """
        return cls('paper_document', val)

    @classmethod
    def paper_folder(cls, val):
        """
        Create an instance of this class set to the ``paper_folder`` tag with
        value ``val``.

        :param PaperFolderLogInfo val:
        :rtype: AssetLogInfo
        """
        return cls('paper_folder', val)

    @classmethod
    def showcase_document(cls, val):
        """
        Create an instance of this class set to the ``showcase_document`` tag
        with value ``val``.

        :param ShowcaseDocumentLogInfo val:
        :rtype: AssetLogInfo
        """
        return cls('showcase_document', val)

    def is_file(self):
        """
        Check if the union tag is ``file``.

        :rtype: bool
        """
        return self._tag == 'file'

    def is_folder(self):
        """
        Check if the union tag is ``folder``.

        :rtype: bool
        """
        return self._tag == 'folder'

    def is_paper_document(self):
        """
        Check if the union tag is ``paper_document``.

        :rtype: bool
        """
        return self._tag == 'paper_document'

    def is_paper_folder(self):
        """
        Check if the union tag is ``paper_folder``.

        :rtype: bool
        """
        return self._tag == 'paper_folder'

    def is_showcase_document(self):
        """
        Check if the union tag is ``showcase_document``.

        :rtype: bool
        """
        return self._tag == 'showcase_document'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_file(self):
        """
        File's details.

        Only call this if :meth:`is_file` is true.

        :rtype: FileLogInfo
        """
        if not self.is_file():
            raise AttributeError("tag 'file' not set")
        return self._value

    def get_folder(self):
        """
        Folder's details.

        Only call this if :meth:`is_folder` is true.

        :rtype: FolderLogInfo
        """
        if not self.is_folder():
            raise AttributeError("tag 'folder' not set")
        return self._value

    def get_paper_document(self):
        """
        Paper document's details.

        Only call this if :meth:`is_paper_document` is true.

        :rtype: PaperDocumentLogInfo
        """
        if not self.is_paper_document():
            raise AttributeError("tag 'paper_document' not set")
        return self._value

    def get_paper_folder(self):
        """
        Paper folder's details.

        Only call this if :meth:`is_paper_folder` is true.

        :rtype: PaperFolderLogInfo
        """
        if not self.is_paper_folder():
            raise AttributeError("tag 'paper_folder' not set")
        return self._value

    def get_showcase_document(self):
        """
        Showcase document's details.

        Only call this if :meth:`is_showcase_document` is true.

        :rtype: ShowcaseDocumentLogInfo
        """
        if not self.is_showcase_document():
            raise AttributeError("tag 'showcase_document' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(AssetLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

AssetLogInfo_validator = bv.Union(AssetLogInfo)

class BackupStatus(bb.Union):
    """
    Backup status

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BackupStatus, self)._process_custom_annotations(annotation_type, field_path, processor)

BackupStatus_validator = bv.Union(BackupStatus)

class BinderAddPageDetails(bb.Struct):
    """
    Added Binder page.

    :ivar team_log.BinderAddPageDetails.event_uuid: Event unique identifier.
    :ivar team_log.BinderAddPageDetails.doc_title: Title of the Binder doc.
    :ivar team_log.BinderAddPageDetails.binder_item_name: Name of the Binder
        page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderAddPageDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderAddPageDetails_validator = bv.Struct(BinderAddPageDetails)

class BinderAddPageType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderAddPageType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderAddPageType_validator = bv.Struct(BinderAddPageType)

class BinderAddSectionDetails(bb.Struct):
    """
    Added Binder section.

    :ivar team_log.BinderAddSectionDetails.event_uuid: Event unique identifier.
    :ivar team_log.BinderAddSectionDetails.doc_title: Title of the Binder doc.
    :ivar team_log.BinderAddSectionDetails.binder_item_name: Name of the Binder
        page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderAddSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderAddSectionDetails_validator = bv.Struct(BinderAddSectionDetails)

class BinderAddSectionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderAddSectionType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderAddSectionType_validator = bv.Struct(BinderAddSectionType)

class BinderRemovePageDetails(bb.Struct):
    """
    Removed Binder page.

    :ivar team_log.BinderRemovePageDetails.event_uuid: Event unique identifier.
    :ivar team_log.BinderRemovePageDetails.doc_title: Title of the Binder doc.
    :ivar team_log.BinderRemovePageDetails.binder_item_name: Name of the Binder
        page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRemovePageDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRemovePageDetails_validator = bv.Struct(BinderRemovePageDetails)

class BinderRemovePageType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRemovePageType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRemovePageType_validator = bv.Struct(BinderRemovePageType)

class BinderRemoveSectionDetails(bb.Struct):
    """
    Removed Binder section.

    :ivar team_log.BinderRemoveSectionDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.BinderRemoveSectionDetails.doc_title: Title of the Binder
        doc.
    :ivar team_log.BinderRemoveSectionDetails.binder_item_name: Name of the
        Binder page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRemoveSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRemoveSectionDetails_validator = bv.Struct(BinderRemoveSectionDetails)

class BinderRemoveSectionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRemoveSectionType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRemoveSectionType_validator = bv.Struct(BinderRemoveSectionType)

class BinderRenamePageDetails(bb.Struct):
    """
    Renamed Binder page.

    :ivar team_log.BinderRenamePageDetails.event_uuid: Event unique identifier.
    :ivar team_log.BinderRenamePageDetails.doc_title: Title of the Binder doc.
    :ivar team_log.BinderRenamePageDetails.binder_item_name: Name of the Binder
        page/section.
    :ivar team_log.BinderRenamePageDetails.previous_binder_item_name: Previous
        name of the Binder page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
        '_previous_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None,
                 previous_binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        self._previous_binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name
        if previous_binder_item_name is not None:
            self.previous_binder_item_name = previous_binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    # Instance attribute type: str (validator is set below)
    previous_binder_item_name = bb.Attribute("previous_binder_item_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRenamePageDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRenamePageDetails_validator = bv.Struct(BinderRenamePageDetails)

class BinderRenamePageType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRenamePageType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRenamePageType_validator = bv.Struct(BinderRenamePageType)

class BinderRenameSectionDetails(bb.Struct):
    """
    Renamed Binder section.

    :ivar team_log.BinderRenameSectionDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.BinderRenameSectionDetails.doc_title: Title of the Binder
        doc.
    :ivar team_log.BinderRenameSectionDetails.binder_item_name: Name of the
        Binder page/section.
    :ivar team_log.BinderRenameSectionDetails.previous_binder_item_name:
        Previous name of the Binder page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
        '_previous_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None,
                 previous_binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        self._previous_binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name
        if previous_binder_item_name is not None:
            self.previous_binder_item_name = previous_binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    # Instance attribute type: str (validator is set below)
    previous_binder_item_name = bb.Attribute("previous_binder_item_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRenameSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRenameSectionDetails_validator = bv.Struct(BinderRenameSectionDetails)

class BinderRenameSectionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderRenameSectionType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderRenameSectionType_validator = bv.Struct(BinderRenameSectionType)

class BinderReorderPageDetails(bb.Struct):
    """
    Reordered Binder page.

    :ivar team_log.BinderReorderPageDetails.event_uuid: Event unique identifier.
    :ivar team_log.BinderReorderPageDetails.doc_title: Title of the Binder doc.
    :ivar team_log.BinderReorderPageDetails.binder_item_name: Name of the Binder
        page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderReorderPageDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderReorderPageDetails_validator = bv.Struct(BinderReorderPageDetails)

class BinderReorderPageType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderReorderPageType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderReorderPageType_validator = bv.Struct(BinderReorderPageType)

class BinderReorderSectionDetails(bb.Struct):
    """
    Reordered Binder section.

    :ivar team_log.BinderReorderSectionDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.BinderReorderSectionDetails.doc_title: Title of the Binder
        doc.
    :ivar team_log.BinderReorderSectionDetails.binder_item_name: Name of the
        Binder page/section.
    """

    __slots__ = [
        '_event_uuid_value',
        '_doc_title_value',
        '_binder_item_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 doc_title=None,
                 binder_item_name=None):
        self._event_uuid_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        self._binder_item_name_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if doc_title is not None:
            self.doc_title = doc_title
        if binder_item_name is not None:
            self.binder_item_name = binder_item_name

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    # Instance attribute type: str (validator is set below)
    binder_item_name = bb.Attribute("binder_item_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderReorderSectionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderReorderSectionDetails_validator = bv.Struct(BinderReorderSectionDetails)

class BinderReorderSectionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(BinderReorderSectionType, self)._process_custom_annotations(annotation_type, field_path, processor)

BinderReorderSectionType_validator = bv.Struct(BinderReorderSectionType)

class CameraUploadsPolicy(bb.Union):
    """
    Policy for controlling if team members can activate camera uploads

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CameraUploadsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

CameraUploadsPolicy_validator = bv.Union(CameraUploadsPolicy)

class CameraUploadsPolicyChangedDetails(bb.Struct):
    """
    Changed camera uploads setting for team.

    :ivar team_log.CameraUploadsPolicyChangedDetails.new_value: New camera
        uploads setting.
    :ivar team_log.CameraUploadsPolicyChangedDetails.previous_value: Previous
        camera uploads setting.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: CameraUploadsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: CameraUploadsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CameraUploadsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

CameraUploadsPolicyChangedDetails_validator = bv.Struct(CameraUploadsPolicyChangedDetails)

class CameraUploadsPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CameraUploadsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

CameraUploadsPolicyChangedType_validator = bv.Struct(CameraUploadsPolicyChangedType)

class CaptureTranscriptPolicy(bb.Union):
    """
    Policy for deciding whether team users can transcription in Capture

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CaptureTranscriptPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

CaptureTranscriptPolicy_validator = bv.Union(CaptureTranscriptPolicy)

class CaptureTranscriptPolicyChangedDetails(bb.Struct):
    """
    Changed Capture transcription policy for team.

    :ivar team_log.CaptureTranscriptPolicyChangedDetails.new_value: To.
    :ivar team_log.CaptureTranscriptPolicyChangedDetails.previous_value: From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: CaptureTranscriptPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: CaptureTranscriptPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CaptureTranscriptPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

CaptureTranscriptPolicyChangedDetails_validator = bv.Struct(CaptureTranscriptPolicyChangedDetails)

class CaptureTranscriptPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CaptureTranscriptPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

CaptureTranscriptPolicyChangedType_validator = bv.Struct(CaptureTranscriptPolicyChangedType)

class Certificate(bb.Struct):
    """
    Certificate details.

    :ivar team_log.Certificate.subject: Certificate subject.
    :ivar team_log.Certificate.issuer: Certificate issuer.
    :ivar team_log.Certificate.issue_date: Certificate issue date.
    :ivar team_log.Certificate.expiration_date: Certificate expiration date.
    :ivar team_log.Certificate.serial_number: Certificate serial number.
    :ivar team_log.Certificate.sha1_fingerprint: Certificate sha1 fingerprint.
    :ivar team_log.Certificate.common_name: Certificate common name.
    """

    __slots__ = [
        '_subject_value',
        '_issuer_value',
        '_issue_date_value',
        '_expiration_date_value',
        '_serial_number_value',
        '_sha1_fingerprint_value',
        '_common_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 subject=None,
                 issuer=None,
                 issue_date=None,
                 expiration_date=None,
                 serial_number=None,
                 sha1_fingerprint=None,
                 common_name=None):
        self._subject_value = bb.NOT_SET
        self._issuer_value = bb.NOT_SET
        self._issue_date_value = bb.NOT_SET
        self._expiration_date_value = bb.NOT_SET
        self._serial_number_value = bb.NOT_SET
        self._sha1_fingerprint_value = bb.NOT_SET
        self._common_name_value = bb.NOT_SET
        if subject is not None:
            self.subject = subject
        if issuer is not None:
            self.issuer = issuer
        if issue_date is not None:
            self.issue_date = issue_date
        if expiration_date is not None:
            self.expiration_date = expiration_date
        if serial_number is not None:
            self.serial_number = serial_number
        if sha1_fingerprint is not None:
            self.sha1_fingerprint = sha1_fingerprint
        if common_name is not None:
            self.common_name = common_name

    # Instance attribute type: str (validator is set below)
    subject = bb.Attribute("subject")

    # Instance attribute type: str (validator is set below)
    issuer = bb.Attribute("issuer")

    # Instance attribute type: str (validator is set below)
    issue_date = bb.Attribute("issue_date")

    # Instance attribute type: str (validator is set below)
    expiration_date = bb.Attribute("expiration_date")

    # Instance attribute type: str (validator is set below)
    serial_number = bb.Attribute("serial_number")

    # Instance attribute type: str (validator is set below)
    sha1_fingerprint = bb.Attribute("sha1_fingerprint")

    # Instance attribute type: str (validator is set below)
    common_name = bb.Attribute("common_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(Certificate, self)._process_custom_annotations(annotation_type, field_path, processor)

Certificate_validator = bv.Struct(Certificate)

class ChangeLinkExpirationPolicy(bb.Union):
    """
    Policy for deciding whether the team's default expiration days policy must
    be enforced when an externally shared link is updated

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    allowed = None
    # Attribute is overwritten below the class definition
    not_allowed = None
    # Attribute is overwritten below the class definition
    other = None

    def is_allowed(self):
        """
        Check if the union tag is ``allowed``.

        :rtype: bool
        """
        return self._tag == 'allowed'

    def is_not_allowed(self):
        """
        Check if the union tag is ``not_allowed``.

        :rtype: bool
        """
        return self._tag == 'not_allowed'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ChangeLinkExpirationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ChangeLinkExpirationPolicy_validator = bv.Union(ChangeLinkExpirationPolicy)

class ChangedEnterpriseAdminRoleDetails(bb.Struct):
    """
    Changed enterprise admin role.

    :ivar team_log.ChangedEnterpriseAdminRoleDetails.previous_value: The
        member&#x2019s previous enterprise admin role.
    :ivar team_log.ChangedEnterpriseAdminRoleDetails.new_value: The
        member&#x2019s new enterprise admin role.
    :ivar team_log.ChangedEnterpriseAdminRoleDetails.team_name: The name of the
        member&#x2019s team.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
        '_team_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None,
                 team_name=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._team_name_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value
        if team_name is not None:
            self.team_name = team_name

    # Instance attribute type: FedAdminRole (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: FedAdminRole (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ChangedEnterpriseAdminRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ChangedEnterpriseAdminRoleDetails_validator = bv.Struct(ChangedEnterpriseAdminRoleDetails)

class ChangedEnterpriseAdminRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ChangedEnterpriseAdminRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

ChangedEnterpriseAdminRoleType_validator = bv.Struct(ChangedEnterpriseAdminRoleType)

class ChangedEnterpriseConnectedTeamStatusDetails(bb.Struct):
    """
    Changed enterprise-connected team status.

    :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.action: The
        preformed change in the team&#x2019s connection status.
    :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.additional_info:
        Additional information about the organization or team.
    :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.previous_value:
        Previous request state.
    :ivar team_log.ChangedEnterpriseConnectedTeamStatusDetails.new_value: New
        request state.
    """

    __slots__ = [
        '_action_value',
        '_additional_info_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 action=None,
                 additional_info=None,
                 previous_value=None,
                 new_value=None):
        self._action_value = bb.NOT_SET
        self._additional_info_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if action is not None:
            self.action = action
        if additional_info is not None:
            self.additional_info = additional_info
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: FedHandshakeAction (validator is set below)
    action = bb.Attribute("action", user_defined=True)

    # Instance attribute type: FederationStatusChangeAdditionalInfo (validator is set below)
    additional_info = bb.Attribute("additional_info", user_defined=True)

    # Instance attribute type: TrustedTeamsRequestState (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: TrustedTeamsRequestState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ChangedEnterpriseConnectedTeamStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ChangedEnterpriseConnectedTeamStatusDetails_validator = bv.Struct(ChangedEnterpriseConnectedTeamStatusDetails)

class ChangedEnterpriseConnectedTeamStatusType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ChangedEnterpriseConnectedTeamStatusType, self)._process_custom_annotations(annotation_type, field_path, processor)

ChangedEnterpriseConnectedTeamStatusType_validator = bv.Struct(ChangedEnterpriseConnectedTeamStatusType)

class ClassificationChangePolicyDetails(bb.Struct):
    """
    Changed classification policy for team.

    :ivar team_log.ClassificationChangePolicyDetails.previous_value: Previous
        classification policy.
    :ivar team_log.ClassificationChangePolicyDetails.new_value: New
        classification policy.
    :ivar team_log.ClassificationChangePolicyDetails.classification_type: Policy
        type.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
        '_classification_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None,
                 classification_type=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._classification_type_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value
        if classification_type is not None:
            self.classification_type = classification_type

    # Instance attribute type: ClassificationPolicyEnumWrapper (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: ClassificationPolicyEnumWrapper (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ClassificationType (validator is set below)
    classification_type = bb.Attribute("classification_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationChangePolicyDetails_validator = bv.Struct(ClassificationChangePolicyDetails)

class ClassificationChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationChangePolicyType_validator = bv.Struct(ClassificationChangePolicyType)

class ClassificationCreateReportDetails(bb.Struct):
    """
    Created Classification report.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationCreateReportDetails_validator = bv.Struct(ClassificationCreateReportDetails)

class ClassificationCreateReportFailDetails(bb.Struct):
    """
    Couldn't create Classification report.

    :ivar team_log.ClassificationCreateReportFailDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationCreateReportFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationCreateReportFailDetails_validator = bv.Struct(ClassificationCreateReportFailDetails)

class ClassificationCreateReportFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationCreateReportFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationCreateReportFailType_validator = bv.Struct(ClassificationCreateReportFailType)

class ClassificationCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationCreateReportType_validator = bv.Struct(ClassificationCreateReportType)

class ClassificationPolicyEnumWrapper(bb.Union):
    """
    Policy for controlling team access to the classification feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    member_and_team_folders = None
    # Attribute is overwritten below the class definition
    team_folders = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_member_and_team_folders(self):
        """
        Check if the union tag is ``member_and_team_folders``.

        :rtype: bool
        """
        return self._tag == 'member_and_team_folders'

    def is_team_folders(self):
        """
        Check if the union tag is ``team_folders``.

        :rtype: bool
        """
        return self._tag == 'team_folders'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationPolicyEnumWrapper, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationPolicyEnumWrapper_validator = bv.Union(ClassificationPolicyEnumWrapper)

class ClassificationType(bb.Union):
    """
    The type of classification (currently only personal information)

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    personal_information = None
    # Attribute is overwritten below the class definition
    pii = None
    # Attribute is overwritten below the class definition
    other = None

    def is_personal_information(self):
        """
        Check if the union tag is ``personal_information``.

        :rtype: bool
        """
        return self._tag == 'personal_information'

    def is_pii(self):
        """
        Check if the union tag is ``pii``.

        :rtype: bool
        """
        return self._tag == 'pii'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ClassificationType, self)._process_custom_annotations(annotation_type, field_path, processor)

ClassificationType_validator = bv.Union(ClassificationType)

class CollectionShareDetails(bb.Struct):
    """
    Shared album.

    :ivar team_log.CollectionShareDetails.album_name: Album name.
    """

    __slots__ = [
        '_album_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 album_name=None):
        self._album_name_value = bb.NOT_SET
        if album_name is not None:
            self.album_name = album_name

    # Instance attribute type: str (validator is set below)
    album_name = bb.Attribute("album_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CollectionShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

CollectionShareDetails_validator = bv.Struct(CollectionShareDetails)

class CollectionShareType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CollectionShareType, self)._process_custom_annotations(annotation_type, field_path, processor)

CollectionShareType_validator = bv.Struct(CollectionShareType)

class ComputerBackupPolicy(bb.Union):
    """
    Policy for controlling team access to computer backup feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ComputerBackupPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ComputerBackupPolicy_validator = bv.Union(ComputerBackupPolicy)

class ComputerBackupPolicyChangedDetails(bb.Struct):
    """
    Changed computer backup policy for team.

    :ivar team_log.ComputerBackupPolicyChangedDetails.new_value: New computer
        backup policy.
    :ivar team_log.ComputerBackupPolicyChangedDetails.previous_value: Previous
        computer backup policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ComputerBackupPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ComputerBackupPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ComputerBackupPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ComputerBackupPolicyChangedDetails_validator = bv.Struct(ComputerBackupPolicyChangedDetails)

class ComputerBackupPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ComputerBackupPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ComputerBackupPolicyChangedType_validator = bv.Struct(ComputerBackupPolicyChangedType)

class ConnectedTeamName(bb.Struct):
    """
    The name of the team

    :ivar team_log.ConnectedTeamName.team: The name of the team.
    """

    __slots__ = [
        '_team_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team=None):
        self._team_value = bb.NOT_SET
        if team is not None:
            self.team = team

    # Instance attribute type: str (validator is set below)
    team = bb.Attribute("team")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ConnectedTeamName, self)._process_custom_annotations(annotation_type, field_path, processor)

ConnectedTeamName_validator = bv.Struct(ConnectedTeamName)

class ContentAdministrationPolicyChangedDetails(bb.Struct):
    """
    Changed content management setting.

    :ivar team_log.ContentAdministrationPolicyChangedDetails.new_value: New
        content administration policy.
    :ivar team_log.ContentAdministrationPolicyChangedDetails.previous_value:
        Previous content administration policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ContentAdministrationPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ContentAdministrationPolicyChangedDetails_validator = bv.Struct(ContentAdministrationPolicyChangedDetails)

class ContentAdministrationPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ContentAdministrationPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ContentAdministrationPolicyChangedType_validator = bv.Struct(ContentAdministrationPolicyChangedType)

class ContentPermanentDeletePolicy(bb.Union):
    """
    Policy for pemanent content deletion

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ContentPermanentDeletePolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ContentPermanentDeletePolicy_validator = bv.Union(ContentPermanentDeletePolicy)

class ContextLogInfo(bb.Union):
    """
    The primary entity on which the action was done.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar team_log.ContextLogInfo.anonymous: Anonymous context.
    :ivar NonTeamMemberLogInfo ContextLogInfo.non_team_member: Action was done
        on behalf of a non team member.
    :ivar TeamLogInfo ContextLogInfo.organization_team: Action was done on
        behalf of a team that's part of an organization.
    :ivar team_log.ContextLogInfo.team: Action was done on behalf of the team.
    :ivar TeamMemberLogInfo ContextLogInfo.team_member: Action was done on
        behalf of a team member.
    :ivar TrustedNonTeamMemberLogInfo ContextLogInfo.trusted_non_team_member:
        Action was done on behalf of a trusted non team member.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    anonymous = None
    # Attribute is overwritten below the class definition
    team = None
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def non_team_member(cls, val):
        """
        Create an instance of this class set to the ``non_team_member`` tag with
        value ``val``.

        :param NonTeamMemberLogInfo val:
        :rtype: ContextLogInfo
        """
        return cls('non_team_member', val)

    @classmethod
    def organization_team(cls, val):
        """
        Create an instance of this class set to the ``organization_team`` tag
        with value ``val``.

        :param TeamLogInfo val:
        :rtype: ContextLogInfo
        """
        return cls('organization_team', val)

    @classmethod
    def team_member(cls, val):
        """
        Create an instance of this class set to the ``team_member`` tag with
        value ``val``.

        :param TeamMemberLogInfo val:
        :rtype: ContextLogInfo
        """
        return cls('team_member', val)

    @classmethod
    def trusted_non_team_member(cls, val):
        """
        Create an instance of this class set to the ``trusted_non_team_member``
        tag with value ``val``.

        :param TrustedNonTeamMemberLogInfo val:
        :rtype: ContextLogInfo
        """
        return cls('trusted_non_team_member', val)

    def is_anonymous(self):
        """
        Check if the union tag is ``anonymous``.

        :rtype: bool
        """
        return self._tag == 'anonymous'

    def is_non_team_member(self):
        """
        Check if the union tag is ``non_team_member``.

        :rtype: bool
        """
        return self._tag == 'non_team_member'

    def is_organization_team(self):
        """
        Check if the union tag is ``organization_team``.

        :rtype: bool
        """
        return self._tag == 'organization_team'

    def is_team(self):
        """
        Check if the union tag is ``team``.

        :rtype: bool
        """
        return self._tag == 'team'

    def is_team_member(self):
        """
        Check if the union tag is ``team_member``.

        :rtype: bool
        """
        return self._tag == 'team_member'

    def is_trusted_non_team_member(self):
        """
        Check if the union tag is ``trusted_non_team_member``.

        :rtype: bool
        """
        return self._tag == 'trusted_non_team_member'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_non_team_member(self):
        """
        Action was done on behalf of a non team member.

        Only call this if :meth:`is_non_team_member` is true.

        :rtype: NonTeamMemberLogInfo
        """
        if not self.is_non_team_member():
            raise AttributeError("tag 'non_team_member' not set")
        return self._value

    def get_organization_team(self):
        """
        Action was done on behalf of a team that's part of an organization.

        Only call this if :meth:`is_organization_team` is true.

        :rtype: TeamLogInfo
        """
        if not self.is_organization_team():
            raise AttributeError("tag 'organization_team' not set")
        return self._value

    def get_team_member(self):
        """
        Action was done on behalf of a team member.

        Only call this if :meth:`is_team_member` is true.

        :rtype: TeamMemberLogInfo
        """
        if not self.is_team_member():
            raise AttributeError("tag 'team_member' not set")
        return self._value

    def get_trusted_non_team_member(self):
        """
        Action was done on behalf of a trusted non team member.

        Only call this if :meth:`is_trusted_non_team_member` is true.

        :rtype: TrustedNonTeamMemberLogInfo
        """
        if not self.is_trusted_non_team_member():
            raise AttributeError("tag 'trusted_non_team_member' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ContextLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ContextLogInfo_validator = bv.Union(ContextLogInfo)

class CreateFolderDetails(bb.Struct):
    """
    Created folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CreateFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

CreateFolderDetails_validator = bv.Struct(CreateFolderDetails)

class CreateFolderType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CreateFolderType, self)._process_custom_annotations(annotation_type, field_path, processor)

CreateFolderType_validator = bv.Struct(CreateFolderType)

class CreateTeamInviteLinkDetails(bb.Struct):
    """
    Created team invite link.

    :ivar team_log.CreateTeamInviteLinkDetails.link_url: The invite link url
        that was created.
    :ivar team_log.CreateTeamInviteLinkDetails.expiry_date: The expiration date
        of the invite link.
    """

    __slots__ = [
        '_link_url_value',
        '_expiry_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 link_url=None,
                 expiry_date=None):
        self._link_url_value = bb.NOT_SET
        self._expiry_date_value = bb.NOT_SET
        if link_url is not None:
            self.link_url = link_url
        if expiry_date is not None:
            self.expiry_date = expiry_date

    # Instance attribute type: str (validator is set below)
    link_url = bb.Attribute("link_url")

    # Instance attribute type: str (validator is set below)
    expiry_date = bb.Attribute("expiry_date")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CreateTeamInviteLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

CreateTeamInviteLinkDetails_validator = bv.Struct(CreateTeamInviteLinkDetails)

class CreateTeamInviteLinkType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(CreateTeamInviteLinkType, self)._process_custom_annotations(annotation_type, field_path, processor)

CreateTeamInviteLinkType_validator = bv.Struct(CreateTeamInviteLinkType)

class DataPlacementRestrictionChangePolicyDetails(bb.Struct):
    """
    Set restrictions on data center locations where team data resides.

    :ivar team_log.DataPlacementRestrictionChangePolicyDetails.previous_value:
        Previous placement restriction.
    :ivar team_log.DataPlacementRestrictionChangePolicyDetails.new_value: New
        placement restriction.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: PlacementRestriction (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: PlacementRestriction (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataPlacementRestrictionChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DataPlacementRestrictionChangePolicyDetails_validator = bv.Struct(DataPlacementRestrictionChangePolicyDetails)

class DataPlacementRestrictionChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataPlacementRestrictionChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

DataPlacementRestrictionChangePolicyType_validator = bv.Struct(DataPlacementRestrictionChangePolicyType)

class DataPlacementRestrictionSatisfyPolicyDetails(bb.Struct):
    """
    Completed restrictions on data center locations where team data resides.

    :ivar
        team_log.DataPlacementRestrictionSatisfyPolicyDetails.placement_restriction:
        Placement restriction.
    """

    __slots__ = [
        '_placement_restriction_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 placement_restriction=None):
        self._placement_restriction_value = bb.NOT_SET
        if placement_restriction is not None:
            self.placement_restriction = placement_restriction

    # Instance attribute type: PlacementRestriction (validator is set below)
    placement_restriction = bb.Attribute("placement_restriction", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataPlacementRestrictionSatisfyPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DataPlacementRestrictionSatisfyPolicyDetails_validator = bv.Struct(DataPlacementRestrictionSatisfyPolicyDetails)

class DataPlacementRestrictionSatisfyPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataPlacementRestrictionSatisfyPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

DataPlacementRestrictionSatisfyPolicyType_validator = bv.Struct(DataPlacementRestrictionSatisfyPolicyType)

class DataResidencyMigrationRequestSuccessfulDetails(bb.Struct):
    """
    Requested data residency migration for team data.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataResidencyMigrationRequestSuccessfulDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DataResidencyMigrationRequestSuccessfulDetails_validator = bv.Struct(DataResidencyMigrationRequestSuccessfulDetails)

class DataResidencyMigrationRequestSuccessfulType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataResidencyMigrationRequestSuccessfulType, self)._process_custom_annotations(annotation_type, field_path, processor)

DataResidencyMigrationRequestSuccessfulType_validator = bv.Struct(DataResidencyMigrationRequestSuccessfulType)

class DataResidencyMigrationRequestUnsuccessfulDetails(bb.Struct):
    """
    Request for data residency migration for team data has failed.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataResidencyMigrationRequestUnsuccessfulDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DataResidencyMigrationRequestUnsuccessfulDetails_validator = bv.Struct(DataResidencyMigrationRequestUnsuccessfulDetails)

class DataResidencyMigrationRequestUnsuccessfulType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DataResidencyMigrationRequestUnsuccessfulType, self)._process_custom_annotations(annotation_type, field_path, processor)

DataResidencyMigrationRequestUnsuccessfulType_validator = bv.Struct(DataResidencyMigrationRequestUnsuccessfulType)

class DefaultLinkExpirationDaysPolicy(bb.Union):
    """
    Policy for the default number of days until an externally shared link
    expires

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    day_1 = None
    # Attribute is overwritten below the class definition
    day_180 = None
    # Attribute is overwritten below the class definition
    day_3 = None
    # Attribute is overwritten below the class definition
    day_30 = None
    # Attribute is overwritten below the class definition
    day_7 = None
    # Attribute is overwritten below the class definition
    day_90 = None
    # Attribute is overwritten below the class definition
    none = None
    # Attribute is overwritten below the class definition
    year_1 = None
    # Attribute is overwritten below the class definition
    other = None

    def is_day_1(self):
        """
        Check if the union tag is ``day_1``.

        :rtype: bool
        """
        return self._tag == 'day_1'

    def is_day_180(self):
        """
        Check if the union tag is ``day_180``.

        :rtype: bool
        """
        return self._tag == 'day_180'

    def is_day_3(self):
        """
        Check if the union tag is ``day_3``.

        :rtype: bool
        """
        return self._tag == 'day_3'

    def is_day_30(self):
        """
        Check if the union tag is ``day_30``.

        :rtype: bool
        """
        return self._tag == 'day_30'

    def is_day_7(self):
        """
        Check if the union tag is ``day_7``.

        :rtype: bool
        """
        return self._tag == 'day_7'

    def is_day_90(self):
        """
        Check if the union tag is ``day_90``.

        :rtype: bool
        """
        return self._tag == 'day_90'

    def is_none(self):
        """
        Check if the union tag is ``none``.

        :rtype: bool
        """
        return self._tag == 'none'

    def is_year_1(self):
        """
        Check if the union tag is ``year_1``.

        :rtype: bool
        """
        return self._tag == 'year_1'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DefaultLinkExpirationDaysPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

DefaultLinkExpirationDaysPolicy_validator = bv.Union(DefaultLinkExpirationDaysPolicy)

class DeleteTeamInviteLinkDetails(bb.Struct):
    """
    Deleted team invite link.

    :ivar team_log.DeleteTeamInviteLinkDetails.link_url: The invite link url
        that was deleted.
    """

    __slots__ = [
        '_link_url_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 link_url=None):
        self._link_url_value = bb.NOT_SET
        if link_url is not None:
            self.link_url = link_url

    # Instance attribute type: str (validator is set below)
    link_url = bb.Attribute("link_url")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeleteTeamInviteLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeleteTeamInviteLinkDetails_validator = bv.Struct(DeleteTeamInviteLinkDetails)

class DeleteTeamInviteLinkType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeleteTeamInviteLinkType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeleteTeamInviteLinkType_validator = bv.Struct(DeleteTeamInviteLinkType)

class DeviceSessionLogInfo(bb.Struct):
    """
    Device's session logged information.

    :ivar team_log.DeviceSessionLogInfo.ip_address: The IP address of the last
        activity from this session.
    :ivar team_log.DeviceSessionLogInfo.created: The time this session was
        created.
    :ivar team_log.DeviceSessionLogInfo.updated: The time of the last activity
        from this session.
    """

    __slots__ = [
        '_ip_address_value',
        '_created_value',
        '_updated_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 ip_address=None,
                 created=None,
                 updated=None):
        self._ip_address_value = bb.NOT_SET
        self._created_value = bb.NOT_SET
        self._updated_value = bb.NOT_SET
        if ip_address is not None:
            self.ip_address = ip_address
        if created is not None:
            self.created = created
        if updated is not None:
            self.updated = updated

    # Instance attribute type: str (validator is set below)
    ip_address = bb.Attribute("ip_address", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    created = bb.Attribute("created", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    updated = bb.Attribute("updated", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceSessionLogInfo_validator = bv.StructTree(DeviceSessionLogInfo)

class DesktopDeviceSessionLogInfo(DeviceSessionLogInfo):
    """
    Information about linked Dropbox desktop client sessions

    :ivar team_log.DesktopDeviceSessionLogInfo.session_info: Desktop session
        unique id.
    :ivar team_log.DesktopDeviceSessionLogInfo.host_name: Name of the hosting
        desktop.
    :ivar team_log.DesktopDeviceSessionLogInfo.client_type: The Dropbox desktop
        client type.
    :ivar team_log.DesktopDeviceSessionLogInfo.client_version: The Dropbox
        client version.
    :ivar team_log.DesktopDeviceSessionLogInfo.platform: Information on the
        hosting platform.
    :ivar team_log.DesktopDeviceSessionLogInfo.is_delete_on_unlink_supported:
        Whether itu2019s possible to delete all of the account files upon
        unlinking.
    """

    __slots__ = [
        '_session_info_value',
        '_host_name_value',
        '_client_type_value',
        '_client_version_value',
        '_platform_value',
        '_is_delete_on_unlink_supported_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 host_name=None,
                 client_type=None,
                 platform=None,
                 is_delete_on_unlink_supported=None,
                 ip_address=None,
                 created=None,
                 updated=None,
                 session_info=None,
                 client_version=None):
        super(DesktopDeviceSessionLogInfo, self).__init__(ip_address,
                                                          created,
                                                          updated)
        self._session_info_value = bb.NOT_SET
        self._host_name_value = bb.NOT_SET
        self._client_type_value = bb.NOT_SET
        self._client_version_value = bb.NOT_SET
        self._platform_value = bb.NOT_SET
        self._is_delete_on_unlink_supported_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if host_name is not None:
            self.host_name = host_name
        if client_type is not None:
            self.client_type = client_type
        if client_version is not None:
            self.client_version = client_version
        if platform is not None:
            self.platform = platform
        if is_delete_on_unlink_supported is not None:
            self.is_delete_on_unlink_supported = is_delete_on_unlink_supported

    # Instance attribute type: DesktopSessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    host_name = bb.Attribute("host_name")

    # Instance attribute type: team.DesktopPlatform (validator is set below)
    client_type = bb.Attribute("client_type", user_defined=True)

    # Instance attribute type: str (validator is set below)
    client_version = bb.Attribute("client_version", nullable=True)

    # Instance attribute type: str (validator is set below)
    platform = bb.Attribute("platform")

    # Instance attribute type: bool (validator is set below)
    is_delete_on_unlink_supported = bb.Attribute("is_delete_on_unlink_supported")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DesktopDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

DesktopDeviceSessionLogInfo_validator = bv.Struct(DesktopDeviceSessionLogInfo)

class SessionLogInfo(bb.Struct):
    """
    Session's logged information.

    :ivar team_log.SessionLogInfo.session_id: Session ID.
    """

    __slots__ = [
        '_session_id_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 session_id=None):
        self._session_id_value = bb.NOT_SET
        if session_id is not None:
            self.session_id = session_id

    # Instance attribute type: str (validator is set below)
    session_id = bb.Attribute("session_id", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

SessionLogInfo_validator = bv.StructTree(SessionLogInfo)

class DesktopSessionLogInfo(SessionLogInfo):
    """
    Desktop session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 session_id=None):
        super(DesktopSessionLogInfo, self).__init__(session_id)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DesktopSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

DesktopSessionLogInfo_validator = bv.Struct(DesktopSessionLogInfo)

class DeviceApprovalsAddExceptionDetails(bb.Struct):
    """
    Added members to device approvals exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsAddExceptionDetails_validator = bv.Struct(DeviceApprovalsAddExceptionDetails)

class DeviceApprovalsAddExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsAddExceptionType_validator = bv.Struct(DeviceApprovalsAddExceptionType)

class DeviceApprovalsChangeDesktopPolicyDetails(bb.Struct):
    """
    Set/removed limit on number of computers member can link to team Dropbox
    account.

    :ivar team_log.DeviceApprovalsChangeDesktopPolicyDetails.new_value: New
        desktop device approvals policy. Might be missing due to historical data
        gap.
    :ivar team_log.DeviceApprovalsChangeDesktopPolicyDetails.previous_value:
        Previous desktop device approvals policy. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: DeviceApprovalsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: DeviceApprovalsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeDesktopPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeDesktopPolicyDetails_validator = bv.Struct(DeviceApprovalsChangeDesktopPolicyDetails)

class DeviceApprovalsChangeDesktopPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeDesktopPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeDesktopPolicyType_validator = bv.Struct(DeviceApprovalsChangeDesktopPolicyType)

class DeviceApprovalsChangeMobilePolicyDetails(bb.Struct):
    """
    Set/removed limit on number of mobile devices member can link to team
    Dropbox account.

    :ivar team_log.DeviceApprovalsChangeMobilePolicyDetails.new_value: New
        mobile device approvals policy. Might be missing due to historical data
        gap.
    :ivar team_log.DeviceApprovalsChangeMobilePolicyDetails.previous_value:
        Previous mobile device approvals policy. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: DeviceApprovalsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: DeviceApprovalsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeMobilePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeMobilePolicyDetails_validator = bv.Struct(DeviceApprovalsChangeMobilePolicyDetails)

class DeviceApprovalsChangeMobilePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeMobilePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeMobilePolicyType_validator = bv.Struct(DeviceApprovalsChangeMobilePolicyType)

class DeviceApprovalsChangeOverageActionDetails(bb.Struct):
    """
    Changed device approvals setting when member is over limit.

    :ivar team_log.DeviceApprovalsChangeOverageActionDetails.new_value: New over
        the limits policy. Might be missing due to historical data gap.
    :ivar team_log.DeviceApprovalsChangeOverageActionDetails.previous_value:
        Previous over the limit policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.RolloutMethod (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: team_policies.RolloutMethod (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeOverageActionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeOverageActionDetails_validator = bv.Struct(DeviceApprovalsChangeOverageActionDetails)

class DeviceApprovalsChangeOverageActionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeOverageActionType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeOverageActionType_validator = bv.Struct(DeviceApprovalsChangeOverageActionType)

class DeviceApprovalsChangeUnlinkActionDetails(bb.Struct):
    """
    Changed device approvals setting when member unlinks approved device.

    :ivar team_log.DeviceApprovalsChangeUnlinkActionDetails.new_value: New
        device unlink policy. Might be missing due to historical data gap.
    :ivar team_log.DeviceApprovalsChangeUnlinkActionDetails.previous_value:
        Previous device unlink policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: DeviceUnlinkPolicy (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: DeviceUnlinkPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeUnlinkActionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeUnlinkActionDetails_validator = bv.Struct(DeviceApprovalsChangeUnlinkActionDetails)

class DeviceApprovalsChangeUnlinkActionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsChangeUnlinkActionType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsChangeUnlinkActionType_validator = bv.Struct(DeviceApprovalsChangeUnlinkActionType)

class DeviceApprovalsPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    limited = None
    # Attribute is overwritten below the class definition
    unlimited = None
    # Attribute is overwritten below the class definition
    other = None

    def is_limited(self):
        """
        Check if the union tag is ``limited``.

        :rtype: bool
        """
        return self._tag == 'limited'

    def is_unlimited(self):
        """
        Check if the union tag is ``unlimited``.

        :rtype: bool
        """
        return self._tag == 'unlimited'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsPolicy_validator = bv.Union(DeviceApprovalsPolicy)

class DeviceApprovalsRemoveExceptionDetails(bb.Struct):
    """
    Removed members from device approvals exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsRemoveExceptionDetails_validator = bv.Struct(DeviceApprovalsRemoveExceptionDetails)

class DeviceApprovalsRemoveExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceApprovalsRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceApprovalsRemoveExceptionType_validator = bv.Struct(DeviceApprovalsRemoveExceptionType)

class DeviceChangeIpDesktopDetails(bb.Struct):
    """
    Changed IP address associated with active desktop session.

    :ivar team_log.DeviceChangeIpDesktopDetails.device_session_info: Device's
        session logged information.
    """

    __slots__ = [
        '_device_session_info_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 device_session_info=None):
        self._device_session_info_value = bb.NOT_SET
        if device_session_info is not None:
            self.device_session_info = device_session_info

    # Instance attribute type: DeviceSessionLogInfo (validator is set below)
    device_session_info = bb.Attribute("device_session_info", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceChangeIpDesktopDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceChangeIpDesktopDetails_validator = bv.Struct(DeviceChangeIpDesktopDetails)

class DeviceChangeIpDesktopType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceChangeIpDesktopType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceChangeIpDesktopType_validator = bv.Struct(DeviceChangeIpDesktopType)

class DeviceChangeIpMobileDetails(bb.Struct):
    """
    Changed IP address associated with active mobile session.

    :ivar team_log.DeviceChangeIpMobileDetails.device_session_info: Device's
        session logged information.
    """

    __slots__ = [
        '_device_session_info_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 device_session_info=None):
        self._device_session_info_value = bb.NOT_SET
        if device_session_info is not None:
            self.device_session_info = device_session_info

    # Instance attribute type: DeviceSessionLogInfo (validator is set below)
    device_session_info = bb.Attribute("device_session_info", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceChangeIpMobileDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceChangeIpMobileDetails_validator = bv.Struct(DeviceChangeIpMobileDetails)

class DeviceChangeIpMobileType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceChangeIpMobileType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceChangeIpMobileType_validator = bv.Struct(DeviceChangeIpMobileType)

class DeviceChangeIpWebDetails(bb.Struct):
    """
    Changed IP address associated with active web session.

    :ivar team_log.DeviceChangeIpWebDetails.user_agent: Web browser name.
    """

    __slots__ = [
        '_user_agent_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 user_agent=None):
        self._user_agent_value = bb.NOT_SET
        if user_agent is not None:
            self.user_agent = user_agent

    # Instance attribute type: str (validator is set below)
    user_agent = bb.Attribute("user_agent")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceChangeIpWebDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceChangeIpWebDetails_validator = bv.Struct(DeviceChangeIpWebDetails)

class DeviceChangeIpWebType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceChangeIpWebType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceChangeIpWebType_validator = bv.Struct(DeviceChangeIpWebType)

class DeviceDeleteOnUnlinkFailDetails(bb.Struct):
    """
    Failed to delete all files from unlinked device.

    :ivar team_log.DeviceDeleteOnUnlinkFailDetails.session_info: Session unique
        id.
    :ivar team_log.DeviceDeleteOnUnlinkFailDetails.display_name: The device
        name. Might be missing due to historical data gap.
    :ivar team_log.DeviceDeleteOnUnlinkFailDetails.num_failures: The number of
        times that remote file deletion failed.
    """

    __slots__ = [
        '_session_info_value',
        '_display_name_value',
        '_num_failures_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 num_failures=None,
                 session_info=None,
                 display_name=None):
        self._session_info_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        self._num_failures_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if display_name is not None:
            self.display_name = display_name
        if num_failures is not None:
            self.num_failures = num_failures

    # Instance attribute type: SessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    # Instance attribute type: int (validator is set below)
    num_failures = bb.Attribute("num_failures")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceDeleteOnUnlinkFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceDeleteOnUnlinkFailDetails_validator = bv.Struct(DeviceDeleteOnUnlinkFailDetails)

class DeviceDeleteOnUnlinkFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceDeleteOnUnlinkFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceDeleteOnUnlinkFailType_validator = bv.Struct(DeviceDeleteOnUnlinkFailType)

class DeviceDeleteOnUnlinkSuccessDetails(bb.Struct):
    """
    Deleted all files from unlinked device.

    :ivar team_log.DeviceDeleteOnUnlinkSuccessDetails.session_info: Session
        unique id.
    :ivar team_log.DeviceDeleteOnUnlinkSuccessDetails.display_name: The device
        name. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_session_info_value',
        '_display_name_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 session_info=None,
                 display_name=None):
        self._session_info_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if display_name is not None:
            self.display_name = display_name

    # Instance attribute type: SessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceDeleteOnUnlinkSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceDeleteOnUnlinkSuccessDetails_validator = bv.Struct(DeviceDeleteOnUnlinkSuccessDetails)

class DeviceDeleteOnUnlinkSuccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceDeleteOnUnlinkSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceDeleteOnUnlinkSuccessType_validator = bv.Struct(DeviceDeleteOnUnlinkSuccessType)

class DeviceLinkFailDetails(bb.Struct):
    """
    Failed to link device.

    :ivar team_log.DeviceLinkFailDetails.ip_address: IP address. Might be
        missing due to historical data gap.
    :ivar team_log.DeviceLinkFailDetails.device_type: A description of the
        device used while user approval blocked.
    """

    __slots__ = [
        '_ip_address_value',
        '_device_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 device_type=None,
                 ip_address=None):
        self._ip_address_value = bb.NOT_SET
        self._device_type_value = bb.NOT_SET
        if ip_address is not None:
            self.ip_address = ip_address
        if device_type is not None:
            self.device_type = device_type

    # Instance attribute type: str (validator is set below)
    ip_address = bb.Attribute("ip_address", nullable=True)

    # Instance attribute type: DeviceType (validator is set below)
    device_type = bb.Attribute("device_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceLinkFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceLinkFailDetails_validator = bv.Struct(DeviceLinkFailDetails)

class DeviceLinkFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceLinkFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceLinkFailType_validator = bv.Struct(DeviceLinkFailType)

class DeviceLinkSuccessDetails(bb.Struct):
    """
    Linked device.

    :ivar team_log.DeviceLinkSuccessDetails.device_session_info: Device's
        session logged information.
    """

    __slots__ = [
        '_device_session_info_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 device_session_info=None):
        self._device_session_info_value = bb.NOT_SET
        if device_session_info is not None:
            self.device_session_info = device_session_info

    # Instance attribute type: DeviceSessionLogInfo (validator is set below)
    device_session_info = bb.Attribute("device_session_info", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceLinkSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceLinkSuccessDetails_validator = bv.Struct(DeviceLinkSuccessDetails)

class DeviceLinkSuccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceLinkSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceLinkSuccessType_validator = bv.Struct(DeviceLinkSuccessType)

class DeviceManagementDisabledDetails(bb.Struct):
    """
    Disabled device management.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceManagementDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceManagementDisabledDetails_validator = bv.Struct(DeviceManagementDisabledDetails)

class DeviceManagementDisabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceManagementDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceManagementDisabledType_validator = bv.Struct(DeviceManagementDisabledType)

class DeviceManagementEnabledDetails(bb.Struct):
    """
    Enabled device management.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceManagementEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceManagementEnabledDetails_validator = bv.Struct(DeviceManagementEnabledDetails)

class DeviceManagementEnabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceManagementEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceManagementEnabledType_validator = bv.Struct(DeviceManagementEnabledType)

class DeviceSyncBackupStatusChangedDetails(bb.Struct):
    """
    Enabled/disabled backup for computer.

    :ivar
        team_log.DeviceSyncBackupStatusChangedDetails.desktop_device_session_info:
        Device's session logged information.
    :ivar team_log.DeviceSyncBackupStatusChangedDetails.previous_value: Previous
        status of computer backup on the device.
    :ivar team_log.DeviceSyncBackupStatusChangedDetails.new_value: Next status
        of computer backup on the device.
    """

    __slots__ = [
        '_desktop_device_session_info_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 desktop_device_session_info=None,
                 previous_value=None,
                 new_value=None):
        self._desktop_device_session_info_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if desktop_device_session_info is not None:
            self.desktop_device_session_info = desktop_device_session_info
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: DesktopDeviceSessionLogInfo (validator is set below)
    desktop_device_session_info = bb.Attribute("desktop_device_session_info", user_defined=True)

    # Instance attribute type: BackupStatus (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: BackupStatus (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceSyncBackupStatusChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceSyncBackupStatusChangedDetails_validator = bv.Struct(DeviceSyncBackupStatusChangedDetails)

class DeviceSyncBackupStatusChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceSyncBackupStatusChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceSyncBackupStatusChangedType_validator = bv.Struct(DeviceSyncBackupStatusChangedType)

class DeviceType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    desktop = None
    # Attribute is overwritten below the class definition
    mobile = None
    # Attribute is overwritten below the class definition
    other = None

    def is_desktop(self):
        """
        Check if the union tag is ``desktop``.

        :rtype: bool
        """
        return self._tag == 'desktop'

    def is_mobile(self):
        """
        Check if the union tag is ``mobile``.

        :rtype: bool
        """
        return self._tag == 'mobile'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceType_validator = bv.Union(DeviceType)

class DeviceUnlinkDetails(bb.Struct):
    """
    Disconnected device.

    :ivar team_log.DeviceUnlinkDetails.session_info: Session unique id.
    :ivar team_log.DeviceUnlinkDetails.display_name: The device name. Might be
        missing due to historical data gap.
    :ivar team_log.DeviceUnlinkDetails.delete_data: True if the user requested
        to delete data after device unlink, false otherwise.
    """

    __slots__ = [
        '_session_info_value',
        '_display_name_value',
        '_delete_data_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 delete_data=None,
                 session_info=None,
                 display_name=None):
        self._session_info_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        self._delete_data_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if display_name is not None:
            self.display_name = display_name
        if delete_data is not None:
            self.delete_data = delete_data

    # Instance attribute type: SessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    # Instance attribute type: bool (validator is set below)
    delete_data = bb.Attribute("delete_data")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceUnlinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceUnlinkDetails_validator = bv.Struct(DeviceUnlinkDetails)

class DeviceUnlinkPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    keep = None
    # Attribute is overwritten below the class definition
    remove = None
    # Attribute is overwritten below the class definition
    other = None

    def is_keep(self):
        """
        Check if the union tag is ``keep``.

        :rtype: bool
        """
        return self._tag == 'keep'

    def is_remove(self):
        """
        Check if the union tag is ``remove``.

        :rtype: bool
        """
        return self._tag == 'remove'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceUnlinkPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceUnlinkPolicy_validator = bv.Union(DeviceUnlinkPolicy)

class DeviceUnlinkType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DeviceUnlinkType, self)._process_custom_annotations(annotation_type, field_path, processor)

DeviceUnlinkType_validator = bv.Struct(DeviceUnlinkType)

class DirectoryRestrictionsAddMembersDetails(bb.Struct):
    """
    Added members to directory restrictions list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DirectoryRestrictionsAddMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DirectoryRestrictionsAddMembersDetails_validator = bv.Struct(DirectoryRestrictionsAddMembersDetails)

class DirectoryRestrictionsAddMembersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DirectoryRestrictionsAddMembersType, self)._process_custom_annotations(annotation_type, field_path, processor)

DirectoryRestrictionsAddMembersType_validator = bv.Struct(DirectoryRestrictionsAddMembersType)

class DirectoryRestrictionsRemoveMembersDetails(bb.Struct):
    """
    Removed members from directory restrictions list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DirectoryRestrictionsRemoveMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DirectoryRestrictionsRemoveMembersDetails_validator = bv.Struct(DirectoryRestrictionsRemoveMembersDetails)

class DirectoryRestrictionsRemoveMembersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DirectoryRestrictionsRemoveMembersType, self)._process_custom_annotations(annotation_type, field_path, processor)

DirectoryRestrictionsRemoveMembersType_validator = bv.Struct(DirectoryRestrictionsRemoveMembersType)

class DisabledDomainInvitesDetails(bb.Struct):
    """
    Disabled domain invites.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DisabledDomainInvitesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DisabledDomainInvitesDetails_validator = bv.Struct(DisabledDomainInvitesDetails)

class DisabledDomainInvitesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DisabledDomainInvitesType, self)._process_custom_annotations(annotation_type, field_path, processor)

DisabledDomainInvitesType_validator = bv.Struct(DisabledDomainInvitesType)

class DispositionActionType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    automatic_delete = None
    # Attribute is overwritten below the class definition
    automatic_permanently_delete = None
    # Attribute is overwritten below the class definition
    other = None

    def is_automatic_delete(self):
        """
        Check if the union tag is ``automatic_delete``.

        :rtype: bool
        """
        return self._tag == 'automatic_delete'

    def is_automatic_permanently_delete(self):
        """
        Check if the union tag is ``automatic_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'automatic_permanently_delete'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DispositionActionType, self)._process_custom_annotations(annotation_type, field_path, processor)

DispositionActionType_validator = bv.Union(DispositionActionType)

class DomainInvitesApproveRequestToJoinTeamDetails(bb.Struct):
    """
    Approved user's request to join team.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesApproveRequestToJoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesApproveRequestToJoinTeamDetails_validator = bv.Struct(DomainInvitesApproveRequestToJoinTeamDetails)

class DomainInvitesApproveRequestToJoinTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesApproveRequestToJoinTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesApproveRequestToJoinTeamType_validator = bv.Struct(DomainInvitesApproveRequestToJoinTeamType)

class DomainInvitesDeclineRequestToJoinTeamDetails(bb.Struct):
    """
    Declined user's request to join team.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesDeclineRequestToJoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesDeclineRequestToJoinTeamDetails_validator = bv.Struct(DomainInvitesDeclineRequestToJoinTeamDetails)

class DomainInvitesDeclineRequestToJoinTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesDeclineRequestToJoinTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesDeclineRequestToJoinTeamType_validator = bv.Struct(DomainInvitesDeclineRequestToJoinTeamType)

class DomainInvitesEmailExistingUsersDetails(bb.Struct):
    """
    Sent domain invites to existing domain accounts.

    :ivar team_log.DomainInvitesEmailExistingUsersDetails.domain_name: Domain
        names.
    :ivar team_log.DomainInvitesEmailExistingUsersDetails.num_recipients: Number
        of recipients.
    """

    __slots__ = [
        '_domain_name_value',
        '_num_recipients_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_name=None,
                 num_recipients=None):
        self._domain_name_value = bb.NOT_SET
        self._num_recipients_value = bb.NOT_SET
        if domain_name is not None:
            self.domain_name = domain_name
        if num_recipients is not None:
            self.num_recipients = num_recipients

    # Instance attribute type: str (validator is set below)
    domain_name = bb.Attribute("domain_name")

    # Instance attribute type: int (validator is set below)
    num_recipients = bb.Attribute("num_recipients")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesEmailExistingUsersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesEmailExistingUsersDetails_validator = bv.Struct(DomainInvitesEmailExistingUsersDetails)

class DomainInvitesEmailExistingUsersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesEmailExistingUsersType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesEmailExistingUsersType_validator = bv.Struct(DomainInvitesEmailExistingUsersType)

class DomainInvitesRequestToJoinTeamDetails(bb.Struct):
    """
    Requested to join team.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesRequestToJoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesRequestToJoinTeamDetails_validator = bv.Struct(DomainInvitesRequestToJoinTeamDetails)

class DomainInvitesRequestToJoinTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesRequestToJoinTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesRequestToJoinTeamType_validator = bv.Struct(DomainInvitesRequestToJoinTeamType)

class DomainInvitesSetInviteNewUserPrefToNoDetails(bb.Struct):
    """
    Disabled "Automatically invite new users".
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesSetInviteNewUserPrefToNoDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesSetInviteNewUserPrefToNoDetails_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToNoDetails)

class DomainInvitesSetInviteNewUserPrefToNoType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesSetInviteNewUserPrefToNoType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesSetInviteNewUserPrefToNoType_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToNoType)

class DomainInvitesSetInviteNewUserPrefToYesDetails(bb.Struct):
    """
    Enabled "Automatically invite new users".
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesSetInviteNewUserPrefToYesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesSetInviteNewUserPrefToYesDetails_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToYesDetails)

class DomainInvitesSetInviteNewUserPrefToYesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainInvitesSetInviteNewUserPrefToYesType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainInvitesSetInviteNewUserPrefToYesType_validator = bv.Struct(DomainInvitesSetInviteNewUserPrefToYesType)

class DomainVerificationAddDomainFailDetails(bb.Struct):
    """
    Failed to verify team domain.

    :ivar team_log.DomainVerificationAddDomainFailDetails.domain_name: Domain
        name.
    :ivar team_log.DomainVerificationAddDomainFailDetails.verification_method:
        Domain name verification method. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_domain_name_value',
        '_verification_method_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_name=None,
                 verification_method=None):
        self._domain_name_value = bb.NOT_SET
        self._verification_method_value = bb.NOT_SET
        if domain_name is not None:
            self.domain_name = domain_name
        if verification_method is not None:
            self.verification_method = verification_method

    # Instance attribute type: str (validator is set below)
    domain_name = bb.Attribute("domain_name")

    # Instance attribute type: str (validator is set below)
    verification_method = bb.Attribute("verification_method", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainVerificationAddDomainFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainVerificationAddDomainFailDetails_validator = bv.Struct(DomainVerificationAddDomainFailDetails)

class DomainVerificationAddDomainFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainVerificationAddDomainFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainVerificationAddDomainFailType_validator = bv.Struct(DomainVerificationAddDomainFailType)

class DomainVerificationAddDomainSuccessDetails(bb.Struct):
    """
    Verified team domain.

    :ivar team_log.DomainVerificationAddDomainSuccessDetails.domain_names:
        Domain names.
    :ivar
        team_log.DomainVerificationAddDomainSuccessDetails.verification_method:
        Domain name verification method. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_domain_names_value',
        '_verification_method_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_names=None,
                 verification_method=None):
        self._domain_names_value = bb.NOT_SET
        self._verification_method_value = bb.NOT_SET
        if domain_names is not None:
            self.domain_names = domain_names
        if verification_method is not None:
            self.verification_method = verification_method

    # Instance attribute type: list of [str] (validator is set below)
    domain_names = bb.Attribute("domain_names")

    # Instance attribute type: str (validator is set below)
    verification_method = bb.Attribute("verification_method", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainVerificationAddDomainSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainVerificationAddDomainSuccessDetails_validator = bv.Struct(DomainVerificationAddDomainSuccessDetails)

class DomainVerificationAddDomainSuccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainVerificationAddDomainSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainVerificationAddDomainSuccessType_validator = bv.Struct(DomainVerificationAddDomainSuccessType)

class DomainVerificationRemoveDomainDetails(bb.Struct):
    """
    Removed domain from list of verified team domains.

    :ivar team_log.DomainVerificationRemoveDomainDetails.domain_names: Domain
        names.
    """

    __slots__ = [
        '_domain_names_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 domain_names=None):
        self._domain_names_value = bb.NOT_SET
        if domain_names is not None:
            self.domain_names = domain_names

    # Instance attribute type: list of [str] (validator is set below)
    domain_names = bb.Attribute("domain_names")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainVerificationRemoveDomainDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainVerificationRemoveDomainDetails_validator = bv.Struct(DomainVerificationRemoveDomainDetails)

class DomainVerificationRemoveDomainType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DomainVerificationRemoveDomainType, self)._process_custom_annotations(annotation_type, field_path, processor)

DomainVerificationRemoveDomainType_validator = bv.Struct(DomainVerificationRemoveDomainType)

class DownloadPolicyType(bb.Union):
    """
    Shared content downloads policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    allow = None
    # Attribute is overwritten below the class definition
    disallow = None
    # Attribute is overwritten below the class definition
    other = None

    def is_allow(self):
        """
        Check if the union tag is ``allow``.

        :rtype: bool
        """
        return self._tag == 'allow'

    def is_disallow(self):
        """
        Check if the union tag is ``disallow``.

        :rtype: bool
        """
        return self._tag == 'disallow'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DownloadPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

DownloadPolicyType_validator = bv.Union(DownloadPolicyType)

class DropboxPasswordsExportedDetails(bb.Struct):
    """
    Exported passwords.

    :ivar team_log.DropboxPasswordsExportedDetails.platform: The platform the
        device runs export.
    """

    __slots__ = [
        '_platform_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 platform=None):
        self._platform_value = bb.NOT_SET
        if platform is not None:
            self.platform = platform

    # Instance attribute type: str (validator is set below)
    platform = bb.Attribute("platform")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsExportedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsExportedDetails_validator = bv.Struct(DropboxPasswordsExportedDetails)

class DropboxPasswordsExportedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsExportedType, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsExportedType_validator = bv.Struct(DropboxPasswordsExportedType)

class DropboxPasswordsNewDeviceEnrolledDetails(bb.Struct):
    """
    Enrolled new Dropbox Passwords device.

    :ivar team_log.DropboxPasswordsNewDeviceEnrolledDetails.is_first_device:
        Whether it's a first device enrolled.
    :ivar team_log.DropboxPasswordsNewDeviceEnrolledDetails.platform: The
        platform the device is enrolled.
    """

    __slots__ = [
        '_is_first_device_value',
        '_platform_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 is_first_device=None,
                 platform=None):
        self._is_first_device_value = bb.NOT_SET
        self._platform_value = bb.NOT_SET
        if is_first_device is not None:
            self.is_first_device = is_first_device
        if platform is not None:
            self.platform = platform

    # Instance attribute type: bool (validator is set below)
    is_first_device = bb.Attribute("is_first_device")

    # Instance attribute type: str (validator is set below)
    platform = bb.Attribute("platform")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsNewDeviceEnrolledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsNewDeviceEnrolledDetails_validator = bv.Struct(DropboxPasswordsNewDeviceEnrolledDetails)

class DropboxPasswordsNewDeviceEnrolledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsNewDeviceEnrolledType, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsNewDeviceEnrolledType_validator = bv.Struct(DropboxPasswordsNewDeviceEnrolledType)

class DropboxPasswordsPolicy(bb.Union):
    """
    Policy for deciding whether team users can use Dropbox Passwords

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsPolicy_validator = bv.Union(DropboxPasswordsPolicy)

class DropboxPasswordsPolicyChangedDetails(bb.Struct):
    """
    Changed Dropbox Passwords policy for team.

    :ivar team_log.DropboxPasswordsPolicyChangedDetails.new_value: To.
    :ivar team_log.DropboxPasswordsPolicyChangedDetails.previous_value: From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: DropboxPasswordsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: DropboxPasswordsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsPolicyChangedDetails_validator = bv.Struct(DropboxPasswordsPolicyChangedDetails)

class DropboxPasswordsPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DropboxPasswordsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

DropboxPasswordsPolicyChangedType_validator = bv.Struct(DropboxPasswordsPolicyChangedType)

class DurationLogInfo(bb.Struct):
    """
    Represents a time duration: unit and amount

    :ivar team_log.DurationLogInfo.unit: Time unit.
    :ivar team_log.DurationLogInfo.amount: Amount of time.
    """

    __slots__ = [
        '_unit_value',
        '_amount_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 unit=None,
                 amount=None):
        self._unit_value = bb.NOT_SET
        self._amount_value = bb.NOT_SET
        if unit is not None:
            self.unit = unit
        if amount is not None:
            self.amount = amount

    # Instance attribute type: TimeUnit (validator is set below)
    unit = bb.Attribute("unit", user_defined=True)

    # Instance attribute type: int (validator is set below)
    amount = bb.Attribute("amount")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(DurationLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

DurationLogInfo_validator = bv.Struct(DurationLogInfo)

class EmailIngestPolicy(bb.Union):
    """
    Policy for deciding whether a team can use Email to Dropbox feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmailIngestPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

EmailIngestPolicy_validator = bv.Union(EmailIngestPolicy)

class EmailIngestPolicyChangedDetails(bb.Struct):
    """
    Changed email to Dropbox policy for team.

    :ivar team_log.EmailIngestPolicyChangedDetails.new_value: To.
    :ivar team_log.EmailIngestPolicyChangedDetails.previous_value: From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: EmailIngestPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: EmailIngestPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmailIngestPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmailIngestPolicyChangedDetails_validator = bv.Struct(EmailIngestPolicyChangedDetails)

class EmailIngestPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmailIngestPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmailIngestPolicyChangedType_validator = bv.Struct(EmailIngestPolicyChangedType)

class EmailIngestReceiveFileDetails(bb.Struct):
    """
    Received files via Email to Dropbox.

    :ivar team_log.EmailIngestReceiveFileDetails.inbox_name: Inbox name.
    :ivar team_log.EmailIngestReceiveFileDetails.attachment_names: Submitted
        file names.
    :ivar team_log.EmailIngestReceiveFileDetails.subject: Subject of the email.
    :ivar team_log.EmailIngestReceiveFileDetails.from_name: The name as provided
        by the submitter.
    :ivar team_log.EmailIngestReceiveFileDetails.from_email: The email as
        provided by the submitter.
    """

    __slots__ = [
        '_inbox_name_value',
        '_attachment_names_value',
        '_subject_value',
        '_from_name_value',
        '_from_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 inbox_name=None,
                 attachment_names=None,
                 subject=None,
                 from_name=None,
                 from_email=None):
        self._inbox_name_value = bb.NOT_SET
        self._attachment_names_value = bb.NOT_SET
        self._subject_value = bb.NOT_SET
        self._from_name_value = bb.NOT_SET
        self._from_email_value = bb.NOT_SET
        if inbox_name is not None:
            self.inbox_name = inbox_name
        if attachment_names is not None:
            self.attachment_names = attachment_names
        if subject is not None:
            self.subject = subject
        if from_name is not None:
            self.from_name = from_name
        if from_email is not None:
            self.from_email = from_email

    # Instance attribute type: str (validator is set below)
    inbox_name = bb.Attribute("inbox_name")

    # Instance attribute type: list of [str] (validator is set below)
    attachment_names = bb.Attribute("attachment_names")

    # Instance attribute type: str (validator is set below)
    subject = bb.Attribute("subject", nullable=True)

    # Instance attribute type: str (validator is set below)
    from_name = bb.Attribute("from_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    from_email = bb.Attribute("from_email", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmailIngestReceiveFileDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmailIngestReceiveFileDetails_validator = bv.Struct(EmailIngestReceiveFileDetails)

class EmailIngestReceiveFileType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmailIngestReceiveFileType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmailIngestReceiveFileType_validator = bv.Struct(EmailIngestReceiveFileType)

class EmmAddExceptionDetails(bb.Struct):
    """
    Added members to EMM exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmAddExceptionDetails_validator = bv.Struct(EmmAddExceptionDetails)

class EmmAddExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmAddExceptionType_validator = bv.Struct(EmmAddExceptionType)

class EmmChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled enterprise mobility management for members.

    :ivar team_log.EmmChangePolicyDetails.new_value: New enterprise mobility
        management policy.
    :ivar team_log.EmmChangePolicyDetails.previous_value: Previous enterprise
        mobility management policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.EmmState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.EmmState (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmChangePolicyDetails_validator = bv.Struct(EmmChangePolicyDetails)

class EmmChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmChangePolicyType_validator = bv.Struct(EmmChangePolicyType)

class EmmCreateExceptionsReportDetails(bb.Struct):
    """
    Created EMM-excluded users report.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmCreateExceptionsReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmCreateExceptionsReportDetails_validator = bv.Struct(EmmCreateExceptionsReportDetails)

class EmmCreateExceptionsReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmCreateExceptionsReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmCreateExceptionsReportType_validator = bv.Struct(EmmCreateExceptionsReportType)

class EmmCreateUsageReportDetails(bb.Struct):
    """
    Created EMM mobile app usage report.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmCreateUsageReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmCreateUsageReportDetails_validator = bv.Struct(EmmCreateUsageReportDetails)

class EmmCreateUsageReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmCreateUsageReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmCreateUsageReportType_validator = bv.Struct(EmmCreateUsageReportType)

class EmmErrorDetails(bb.Struct):
    """
    Failed to sign in via EMM.

    :ivar team_log.EmmErrorDetails.error_details: Error details.
    """

    __slots__ = [
        '_error_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 error_details=None):
        self._error_details_value = bb.NOT_SET
        if error_details is not None:
            self.error_details = error_details

    # Instance attribute type: FailureDetailsLogInfo (validator is set below)
    error_details = bb.Attribute("error_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmErrorDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmErrorDetails_validator = bv.Struct(EmmErrorDetails)

class EmmErrorType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmErrorType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmErrorType_validator = bv.Struct(EmmErrorType)

class EmmRefreshAuthTokenDetails(bb.Struct):
    """
    Refreshed auth token used for setting up EMM.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmRefreshAuthTokenDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmRefreshAuthTokenDetails_validator = bv.Struct(EmmRefreshAuthTokenDetails)

class EmmRefreshAuthTokenType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmRefreshAuthTokenType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmRefreshAuthTokenType_validator = bv.Struct(EmmRefreshAuthTokenType)

class EmmRemoveExceptionDetails(bb.Struct):
    """
    Removed members from EMM exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmRemoveExceptionDetails_validator = bv.Struct(EmmRemoveExceptionDetails)

class EmmRemoveExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EmmRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

EmmRemoveExceptionType_validator = bv.Struct(EmmRemoveExceptionType)

class EnabledDomainInvitesDetails(bb.Struct):
    """
    Enabled domain invites.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EnabledDomainInvitesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EnabledDomainInvitesDetails_validator = bv.Struct(EnabledDomainInvitesDetails)

class EnabledDomainInvitesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EnabledDomainInvitesType, self)._process_custom_annotations(annotation_type, field_path, processor)

EnabledDomainInvitesType_validator = bv.Struct(EnabledDomainInvitesType)

class EndedEnterpriseAdminSessionDeprecatedDetails(bb.Struct):
    """
    Ended enterprise admin session.

    :ivar
        team_log.EndedEnterpriseAdminSessionDeprecatedDetails.federation_extra_details:
        More information about the organization or team.
    """

    __slots__ = [
        '_federation_extra_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 federation_extra_details=None):
        self._federation_extra_details_value = bb.NOT_SET
        if federation_extra_details is not None:
            self.federation_extra_details = federation_extra_details

    # Instance attribute type: FedExtraDetails (validator is set below)
    federation_extra_details = bb.Attribute("federation_extra_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EndedEnterpriseAdminSessionDeprecatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EndedEnterpriseAdminSessionDeprecatedDetails_validator = bv.Struct(EndedEnterpriseAdminSessionDeprecatedDetails)

class EndedEnterpriseAdminSessionDeprecatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EndedEnterpriseAdminSessionDeprecatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

EndedEnterpriseAdminSessionDeprecatedType_validator = bv.Struct(EndedEnterpriseAdminSessionDeprecatedType)

class EndedEnterpriseAdminSessionDetails(bb.Struct):
    """
    Ended enterprise admin session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EndedEnterpriseAdminSessionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EndedEnterpriseAdminSessionDetails_validator = bv.Struct(EndedEnterpriseAdminSessionDetails)

class EndedEnterpriseAdminSessionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EndedEnterpriseAdminSessionType, self)._process_custom_annotations(annotation_type, field_path, processor)

EndedEnterpriseAdminSessionType_validator = bv.Struct(EndedEnterpriseAdminSessionType)

class EnforceLinkPasswordPolicy(bb.Union):
    """
    Policy for deciding whether password must be enforced when an externally
    shared link is updated

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    optional = None
    # Attribute is overwritten below the class definition
    required = None
    # Attribute is overwritten below the class definition
    other = None

    def is_optional(self):
        """
        Check if the union tag is ``optional``.

        :rtype: bool
        """
        return self._tag == 'optional'

    def is_required(self):
        """
        Check if the union tag is ``required``.

        :rtype: bool
        """
        return self._tag == 'required'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EnforceLinkPasswordPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

EnforceLinkPasswordPolicy_validator = bv.Union(EnforceLinkPasswordPolicy)

class EnterpriseSettingsLockingDetails(bb.Struct):
    """
    Changed who can update a setting.

    :ivar team_log.EnterpriseSettingsLockingDetails.team_name: The secondary
        team name.
    :ivar team_log.EnterpriseSettingsLockingDetails.settings_page_name: Settings
        page name.
    :ivar
        team_log.EnterpriseSettingsLockingDetails.previous_settings_page_locking_state:
        Previous locked settings page state.
    :ivar
        team_log.EnterpriseSettingsLockingDetails.new_settings_page_locking_state:
        New locked settings page state.
    """

    __slots__ = [
        '_team_name_value',
        '_settings_page_name_value',
        '_previous_settings_page_locking_state_value',
        '_new_settings_page_locking_state_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team_name=None,
                 settings_page_name=None,
                 previous_settings_page_locking_state=None,
                 new_settings_page_locking_state=None):
        self._team_name_value = bb.NOT_SET
        self._settings_page_name_value = bb.NOT_SET
        self._previous_settings_page_locking_state_value = bb.NOT_SET
        self._new_settings_page_locking_state_value = bb.NOT_SET
        if team_name is not None:
            self.team_name = team_name
        if settings_page_name is not None:
            self.settings_page_name = settings_page_name
        if previous_settings_page_locking_state is not None:
            self.previous_settings_page_locking_state = previous_settings_page_locking_state
        if new_settings_page_locking_state is not None:
            self.new_settings_page_locking_state = new_settings_page_locking_state

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name")

    # Instance attribute type: str (validator is set below)
    settings_page_name = bb.Attribute("settings_page_name")

    # Instance attribute type: str (validator is set below)
    previous_settings_page_locking_state = bb.Attribute("previous_settings_page_locking_state")

    # Instance attribute type: str (validator is set below)
    new_settings_page_locking_state = bb.Attribute("new_settings_page_locking_state")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EnterpriseSettingsLockingDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EnterpriseSettingsLockingDetails_validator = bv.Struct(EnterpriseSettingsLockingDetails)

class EnterpriseSettingsLockingType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EnterpriseSettingsLockingType, self)._process_custom_annotations(annotation_type, field_path, processor)

EnterpriseSettingsLockingType_validator = bv.Struct(EnterpriseSettingsLockingType)

class EventCategory(bb.Union):
    """
    Category of events in event audit log.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar team_log.EventCategory.admin_alerting: Events that involve team
        related alerts.
    :ivar team_log.EventCategory.apps: Events that apply to management of linked
        apps.
    :ivar team_log.EventCategory.comments: Events that have to do with comments
        on files and Paper documents.
    :ivar team_log.EventCategory.data_governance: Events that involve data
        governance actions
    :ivar team_log.EventCategory.devices: Events that apply to linked devices on
        mobile, desktop and Web platforms.
    :ivar team_log.EventCategory.domains: Events that involve domain management
        feature: domain verification, invite enforcement and account capture.
    :ivar team_log.EventCategory.file_operations: Events that have to do with
        filesystem operations on files and folders: copy, move, delete, etc.
    :ivar team_log.EventCategory.file_requests: Events that apply to the file
        requests feature.
    :ivar team_log.EventCategory.groups: Events that involve group management.
    :ivar team_log.EventCategory.logins: Events that involve users signing in to
        or out of Dropbox.
    :ivar team_log.EventCategory.members: Events that involve team member
        management.
    :ivar team_log.EventCategory.paper: Events that apply to Dropbox Paper.
    :ivar team_log.EventCategory.passwords: Events that involve using, changing
        or resetting passwords.
    :ivar team_log.EventCategory.reports: Events that concern generation of
        admin reports, including team activity and device usage.
    :ivar team_log.EventCategory.sharing: Events that apply to all types of
        sharing and collaboration.
    :ivar team_log.EventCategory.showcase: Events that apply to Dropbox
        Showcase.
    :ivar team_log.EventCategory.sso: Events that involve using or configuring
        single sign-on as well as administrative policies concerning single
        sign-on.
    :ivar team_log.EventCategory.team_folders: Events that involve team folder
        management.
    :ivar team_log.EventCategory.team_policies: Events that involve a change in
        team-wide policies.
    :ivar team_log.EventCategory.team_profile: Events that involve a change in
        the team profile.
    :ivar team_log.EventCategory.tfa: Events that involve using or configuring
        two factor authentication as well as administrative policies concerning
        two factor authentication.
    :ivar team_log.EventCategory.trusted_teams: Events that apply to cross-team
        trust establishment.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    admin_alerting = None
    # Attribute is overwritten below the class definition
    apps = None
    # Attribute is overwritten below the class definition
    comments = None
    # Attribute is overwritten below the class definition
    data_governance = None
    # Attribute is overwritten below the class definition
    devices = None
    # Attribute is overwritten below the class definition
    domains = None
    # Attribute is overwritten below the class definition
    file_operations = None
    # Attribute is overwritten below the class definition
    file_requests = None
    # Attribute is overwritten below the class definition
    groups = None
    # Attribute is overwritten below the class definition
    logins = None
    # Attribute is overwritten below the class definition
    members = None
    # Attribute is overwritten below the class definition
    paper = None
    # Attribute is overwritten below the class definition
    passwords = None
    # Attribute is overwritten below the class definition
    reports = None
    # Attribute is overwritten below the class definition
    sharing = None
    # Attribute is overwritten below the class definition
    showcase = None
    # Attribute is overwritten below the class definition
    sso = None
    # Attribute is overwritten below the class definition
    team_folders = None
    # Attribute is overwritten below the class definition
    team_policies = None
    # Attribute is overwritten below the class definition
    team_profile = None
    # Attribute is overwritten below the class definition
    tfa = None
    # Attribute is overwritten below the class definition
    trusted_teams = None
    # Attribute is overwritten below the class definition
    other = None

    def is_admin_alerting(self):
        """
        Check if the union tag is ``admin_alerting``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting'

    def is_apps(self):
        """
        Check if the union tag is ``apps``.

        :rtype: bool
        """
        return self._tag == 'apps'

    def is_comments(self):
        """
        Check if the union tag is ``comments``.

        :rtype: bool
        """
        return self._tag == 'comments'

    def is_data_governance(self):
        """
        Check if the union tag is ``data_governance``.

        :rtype: bool
        """
        return self._tag == 'data_governance'

    def is_devices(self):
        """
        Check if the union tag is ``devices``.

        :rtype: bool
        """
        return self._tag == 'devices'

    def is_domains(self):
        """
        Check if the union tag is ``domains``.

        :rtype: bool
        """
        return self._tag == 'domains'

    def is_file_operations(self):
        """
        Check if the union tag is ``file_operations``.

        :rtype: bool
        """
        return self._tag == 'file_operations'

    def is_file_requests(self):
        """
        Check if the union tag is ``file_requests``.

        :rtype: bool
        """
        return self._tag == 'file_requests'

    def is_groups(self):
        """
        Check if the union tag is ``groups``.

        :rtype: bool
        """
        return self._tag == 'groups'

    def is_logins(self):
        """
        Check if the union tag is ``logins``.

        :rtype: bool
        """
        return self._tag == 'logins'

    def is_members(self):
        """
        Check if the union tag is ``members``.

        :rtype: bool
        """
        return self._tag == 'members'

    def is_paper(self):
        """
        Check if the union tag is ``paper``.

        :rtype: bool
        """
        return self._tag == 'paper'

    def is_passwords(self):
        """
        Check if the union tag is ``passwords``.

        :rtype: bool
        """
        return self._tag == 'passwords'

    def is_reports(self):
        """
        Check if the union tag is ``reports``.

        :rtype: bool
        """
        return self._tag == 'reports'

    def is_sharing(self):
        """
        Check if the union tag is ``sharing``.

        :rtype: bool
        """
        return self._tag == 'sharing'

    def is_showcase(self):
        """
        Check if the union tag is ``showcase``.

        :rtype: bool
        """
        return self._tag == 'showcase'

    def is_sso(self):
        """
        Check if the union tag is ``sso``.

        :rtype: bool
        """
        return self._tag == 'sso'

    def is_team_folders(self):
        """
        Check if the union tag is ``team_folders``.

        :rtype: bool
        """
        return self._tag == 'team_folders'

    def is_team_policies(self):
        """
        Check if the union tag is ``team_policies``.

        :rtype: bool
        """
        return self._tag == 'team_policies'

    def is_team_profile(self):
        """
        Check if the union tag is ``team_profile``.

        :rtype: bool
        """
        return self._tag == 'team_profile'

    def is_tfa(self):
        """
        Check if the union tag is ``tfa``.

        :rtype: bool
        """
        return self._tag == 'tfa'

    def is_trusted_teams(self):
        """
        Check if the union tag is ``trusted_teams``.

        :rtype: bool
        """
        return self._tag == 'trusted_teams'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EventCategory, self)._process_custom_annotations(annotation_type, field_path, processor)

EventCategory_validator = bv.Union(EventCategory)

class EventDetails(bb.Union):
    """
    Additional fields depending on the event type.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar MissingDetails EventDetails.missing_details: Hints that this event was
        returned with missing details due to an internal error.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def admin_alerting_alert_state_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``admin_alerting_alert_state_changed_details`` tag with value ``val``.

        :param AdminAlertingAlertStateChangedDetails val:
        :rtype: EventDetails
        """
        return cls('admin_alerting_alert_state_changed_details', val)

    @classmethod
    def admin_alerting_changed_alert_config_details(cls, val):
        """
        Create an instance of this class set to the
        ``admin_alerting_changed_alert_config_details`` tag with value ``val``.

        :param AdminAlertingChangedAlertConfigDetails val:
        :rtype: EventDetails
        """
        return cls('admin_alerting_changed_alert_config_details', val)

    @classmethod
    def admin_alerting_triggered_alert_details(cls, val):
        """
        Create an instance of this class set to the
        ``admin_alerting_triggered_alert_details`` tag with value ``val``.

        :param AdminAlertingTriggeredAlertDetails val:
        :rtype: EventDetails
        """
        return cls('admin_alerting_triggered_alert_details', val)

    @classmethod
    def app_blocked_by_permissions_details(cls, val):
        """
        Create an instance of this class set to the
        ``app_blocked_by_permissions_details`` tag with value ``val``.

        :param AppBlockedByPermissionsDetails val:
        :rtype: EventDetails
        """
        return cls('app_blocked_by_permissions_details', val)

    @classmethod
    def app_link_team_details(cls, val):
        """
        Create an instance of this class set to the ``app_link_team_details``
        tag with value ``val``.

        :param AppLinkTeamDetails val:
        :rtype: EventDetails
        """
        return cls('app_link_team_details', val)

    @classmethod
    def app_link_user_details(cls, val):
        """
        Create an instance of this class set to the ``app_link_user_details``
        tag with value ``val``.

        :param AppLinkUserDetails val:
        :rtype: EventDetails
        """
        return cls('app_link_user_details', val)

    @classmethod
    def app_unlink_team_details(cls, val):
        """
        Create an instance of this class set to the ``app_unlink_team_details``
        tag with value ``val``.

        :param AppUnlinkTeamDetails val:
        :rtype: EventDetails
        """
        return cls('app_unlink_team_details', val)

    @classmethod
    def app_unlink_user_details(cls, val):
        """
        Create an instance of this class set to the ``app_unlink_user_details``
        tag with value ``val``.

        :param AppUnlinkUserDetails val:
        :rtype: EventDetails
        """
        return cls('app_unlink_user_details', val)

    @classmethod
    def integration_connected_details(cls, val):
        """
        Create an instance of this class set to the
        ``integration_connected_details`` tag with value ``val``.

        :param IntegrationConnectedDetails val:
        :rtype: EventDetails
        """
        return cls('integration_connected_details', val)

    @classmethod
    def integration_disconnected_details(cls, val):
        """
        Create an instance of this class set to the
        ``integration_disconnected_details`` tag with value ``val``.

        :param IntegrationDisconnectedDetails val:
        :rtype: EventDetails
        """
        return cls('integration_disconnected_details', val)

    @classmethod
    def file_add_comment_details(cls, val):
        """
        Create an instance of this class set to the ``file_add_comment_details``
        tag with value ``val``.

        :param FileAddCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_add_comment_details', val)

    @classmethod
    def file_change_comment_subscription_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_change_comment_subscription_details`` tag with value ``val``.

        :param FileChangeCommentSubscriptionDetails val:
        :rtype: EventDetails
        """
        return cls('file_change_comment_subscription_details', val)

    @classmethod
    def file_delete_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_delete_comment_details`` tag with value ``val``.

        :param FileDeleteCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_delete_comment_details', val)

    @classmethod
    def file_edit_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_edit_comment_details`` tag with value ``val``.

        :param FileEditCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_edit_comment_details', val)

    @classmethod
    def file_like_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_like_comment_details`` tag with value ``val``.

        :param FileLikeCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_like_comment_details', val)

    @classmethod
    def file_resolve_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_resolve_comment_details`` tag with value ``val``.

        :param FileResolveCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_resolve_comment_details', val)

    @classmethod
    def file_unlike_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_unlike_comment_details`` tag with value ``val``.

        :param FileUnlikeCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_unlike_comment_details', val)

    @classmethod
    def file_unresolve_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_unresolve_comment_details`` tag with value ``val``.

        :param FileUnresolveCommentDetails val:
        :rtype: EventDetails
        """
        return cls('file_unresolve_comment_details', val)

    @classmethod
    def governance_policy_add_folders_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_add_folders_details`` tag with value ``val``.

        :param GovernancePolicyAddFoldersDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_add_folders_details', val)

    @classmethod
    def governance_policy_add_folder_failed_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_add_folder_failed_details`` tag with value ``val``.

        :param GovernancePolicyAddFolderFailedDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_add_folder_failed_details', val)

    @classmethod
    def governance_policy_content_disposed_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_content_disposed_details`` tag with value ``val``.

        :param GovernancePolicyContentDisposedDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_content_disposed_details', val)

    @classmethod
    def governance_policy_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_create_details`` tag with value ``val``.

        :param GovernancePolicyCreateDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_create_details', val)

    @classmethod
    def governance_policy_delete_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_delete_details`` tag with value ``val``.

        :param GovernancePolicyDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_delete_details', val)

    @classmethod
    def governance_policy_edit_details_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_edit_details_details`` tag with value ``val``.

        :param GovernancePolicyEditDetailsDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_edit_details_details', val)

    @classmethod
    def governance_policy_edit_duration_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_edit_duration_details`` tag with value ``val``.

        :param GovernancePolicyEditDurationDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_edit_duration_details', val)

    @classmethod
    def governance_policy_export_created_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_export_created_details`` tag with value ``val``.

        :param GovernancePolicyExportCreatedDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_export_created_details', val)

    @classmethod
    def governance_policy_export_removed_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_export_removed_details`` tag with value ``val``.

        :param GovernancePolicyExportRemovedDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_export_removed_details', val)

    @classmethod
    def governance_policy_remove_folders_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_remove_folders_details`` tag with value ``val``.

        :param GovernancePolicyRemoveFoldersDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_remove_folders_details', val)

    @classmethod
    def governance_policy_report_created_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_report_created_details`` tag with value ``val``.

        :param GovernancePolicyReportCreatedDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_report_created_details', val)

    @classmethod
    def governance_policy_zip_part_downloaded_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_zip_part_downloaded_details`` tag with value
        ``val``.

        :param GovernancePolicyZipPartDownloadedDetails val:
        :rtype: EventDetails
        """
        return cls('governance_policy_zip_part_downloaded_details', val)

    @classmethod
    def legal_holds_activate_a_hold_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_activate_a_hold_details`` tag with value ``val``.

        :param LegalHoldsActivateAHoldDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_activate_a_hold_details', val)

    @classmethod
    def legal_holds_add_members_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_add_members_details`` tag with value ``val``.

        :param LegalHoldsAddMembersDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_add_members_details', val)

    @classmethod
    def legal_holds_change_hold_details_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_change_hold_details_details`` tag with value ``val``.

        :param LegalHoldsChangeHoldDetailsDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_change_hold_details_details', val)

    @classmethod
    def legal_holds_change_hold_name_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_change_hold_name_details`` tag with value ``val``.

        :param LegalHoldsChangeHoldNameDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_change_hold_name_details', val)

    @classmethod
    def legal_holds_export_a_hold_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_a_hold_details`` tag with value ``val``.

        :param LegalHoldsExportAHoldDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_export_a_hold_details', val)

    @classmethod
    def legal_holds_export_cancelled_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_cancelled_details`` tag with value ``val``.

        :param LegalHoldsExportCancelledDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_export_cancelled_details', val)

    @classmethod
    def legal_holds_export_downloaded_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_downloaded_details`` tag with value ``val``.

        :param LegalHoldsExportDownloadedDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_export_downloaded_details', val)

    @classmethod
    def legal_holds_export_removed_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_removed_details`` tag with value ``val``.

        :param LegalHoldsExportRemovedDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_export_removed_details', val)

    @classmethod
    def legal_holds_release_a_hold_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_release_a_hold_details`` tag with value ``val``.

        :param LegalHoldsReleaseAHoldDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_release_a_hold_details', val)

    @classmethod
    def legal_holds_remove_members_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_remove_members_details`` tag with value ``val``.

        :param LegalHoldsRemoveMembersDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_remove_members_details', val)

    @classmethod
    def legal_holds_report_a_hold_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_report_a_hold_details`` tag with value ``val``.

        :param LegalHoldsReportAHoldDetails val:
        :rtype: EventDetails
        """
        return cls('legal_holds_report_a_hold_details', val)

    @classmethod
    def device_change_ip_desktop_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_change_ip_desktop_details`` tag with value ``val``.

        :param DeviceChangeIpDesktopDetails val:
        :rtype: EventDetails
        """
        return cls('device_change_ip_desktop_details', val)

    @classmethod
    def device_change_ip_mobile_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_change_ip_mobile_details`` tag with value ``val``.

        :param DeviceChangeIpMobileDetails val:
        :rtype: EventDetails
        """
        return cls('device_change_ip_mobile_details', val)

    @classmethod
    def device_change_ip_web_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_change_ip_web_details`` tag with value ``val``.

        :param DeviceChangeIpWebDetails val:
        :rtype: EventDetails
        """
        return cls('device_change_ip_web_details', val)

    @classmethod
    def device_delete_on_unlink_fail_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_delete_on_unlink_fail_details`` tag with value ``val``.

        :param DeviceDeleteOnUnlinkFailDetails val:
        :rtype: EventDetails
        """
        return cls('device_delete_on_unlink_fail_details', val)

    @classmethod
    def device_delete_on_unlink_success_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_delete_on_unlink_success_details`` tag with value ``val``.

        :param DeviceDeleteOnUnlinkSuccessDetails val:
        :rtype: EventDetails
        """
        return cls('device_delete_on_unlink_success_details', val)

    @classmethod
    def device_link_fail_details(cls, val):
        """
        Create an instance of this class set to the ``device_link_fail_details``
        tag with value ``val``.

        :param DeviceLinkFailDetails val:
        :rtype: EventDetails
        """
        return cls('device_link_fail_details', val)

    @classmethod
    def device_link_success_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_link_success_details`` tag with value ``val``.

        :param DeviceLinkSuccessDetails val:
        :rtype: EventDetails
        """
        return cls('device_link_success_details', val)

    @classmethod
    def device_management_disabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_management_disabled_details`` tag with value ``val``.

        :param DeviceManagementDisabledDetails val:
        :rtype: EventDetails
        """
        return cls('device_management_disabled_details', val)

    @classmethod
    def device_management_enabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_management_enabled_details`` tag with value ``val``.

        :param DeviceManagementEnabledDetails val:
        :rtype: EventDetails
        """
        return cls('device_management_enabled_details', val)

    @classmethod
    def device_sync_backup_status_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_sync_backup_status_changed_details`` tag with value ``val``.

        :param DeviceSyncBackupStatusChangedDetails val:
        :rtype: EventDetails
        """
        return cls('device_sync_backup_status_changed_details', val)

    @classmethod
    def device_unlink_details(cls, val):
        """
        Create an instance of this class set to the ``device_unlink_details``
        tag with value ``val``.

        :param DeviceUnlinkDetails val:
        :rtype: EventDetails
        """
        return cls('device_unlink_details', val)

    @classmethod
    def dropbox_passwords_exported_details(cls, val):
        """
        Create an instance of this class set to the
        ``dropbox_passwords_exported_details`` tag with value ``val``.

        :param DropboxPasswordsExportedDetails val:
        :rtype: EventDetails
        """
        return cls('dropbox_passwords_exported_details', val)

    @classmethod
    def dropbox_passwords_new_device_enrolled_details(cls, val):
        """
        Create an instance of this class set to the
        ``dropbox_passwords_new_device_enrolled_details`` tag with value
        ``val``.

        :param DropboxPasswordsNewDeviceEnrolledDetails val:
        :rtype: EventDetails
        """
        return cls('dropbox_passwords_new_device_enrolled_details', val)

    @classmethod
    def emm_refresh_auth_token_details(cls, val):
        """
        Create an instance of this class set to the
        ``emm_refresh_auth_token_details`` tag with value ``val``.

        :param EmmRefreshAuthTokenDetails val:
        :rtype: EventDetails
        """
        return cls('emm_refresh_auth_token_details', val)

    @classmethod
    def external_drive_backup_eligibility_status_checked_details(cls, val):
        """
        Create an instance of this class set to the
        ``external_drive_backup_eligibility_status_checked_details`` tag with
        value ``val``.

        :param ExternalDriveBackupEligibilityStatusCheckedDetails val:
        :rtype: EventDetails
        """
        return cls('external_drive_backup_eligibility_status_checked_details', val)

    @classmethod
    def external_drive_backup_status_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``external_drive_backup_status_changed_details`` tag with value ``val``.

        :param ExternalDriveBackupStatusChangedDetails val:
        :rtype: EventDetails
        """
        return cls('external_drive_backup_status_changed_details', val)

    @classmethod
    def account_capture_change_availability_details(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_change_availability_details`` tag with value ``val``.

        :param AccountCaptureChangeAvailabilityDetails val:
        :rtype: EventDetails
        """
        return cls('account_capture_change_availability_details', val)

    @classmethod
    def account_capture_migrate_account_details(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_migrate_account_details`` tag with value ``val``.

        :param AccountCaptureMigrateAccountDetails val:
        :rtype: EventDetails
        """
        return cls('account_capture_migrate_account_details', val)

    @classmethod
    def account_capture_notification_emails_sent_details(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_notification_emails_sent_details`` tag with value
        ``val``.

        :param AccountCaptureNotificationEmailsSentDetails val:
        :rtype: EventDetails
        """
        return cls('account_capture_notification_emails_sent_details', val)

    @classmethod
    def account_capture_relinquish_account_details(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_relinquish_account_details`` tag with value ``val``.

        :param AccountCaptureRelinquishAccountDetails val:
        :rtype: EventDetails
        """
        return cls('account_capture_relinquish_account_details', val)

    @classmethod
    def disabled_domain_invites_details(cls, val):
        """
        Create an instance of this class set to the
        ``disabled_domain_invites_details`` tag with value ``val``.

        :param DisabledDomainInvitesDetails val:
        :rtype: EventDetails
        """
        return cls('disabled_domain_invites_details', val)

    @classmethod
    def domain_invites_approve_request_to_join_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_approve_request_to_join_team_details`` tag with value
        ``val``.

        :param DomainInvitesApproveRequestToJoinTeamDetails val:
        :rtype: EventDetails
        """
        return cls('domain_invites_approve_request_to_join_team_details', val)

    @classmethod
    def domain_invites_decline_request_to_join_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_decline_request_to_join_team_details`` tag with value
        ``val``.

        :param DomainInvitesDeclineRequestToJoinTeamDetails val:
        :rtype: EventDetails
        """
        return cls('domain_invites_decline_request_to_join_team_details', val)

    @classmethod
    def domain_invites_email_existing_users_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_email_existing_users_details`` tag with value ``val``.

        :param DomainInvitesEmailExistingUsersDetails val:
        :rtype: EventDetails
        """
        return cls('domain_invites_email_existing_users_details', val)

    @classmethod
    def domain_invites_request_to_join_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_request_to_join_team_details`` tag with value ``val``.

        :param DomainInvitesRequestToJoinTeamDetails val:
        :rtype: EventDetails
        """
        return cls('domain_invites_request_to_join_team_details', val)

    @classmethod
    def domain_invites_set_invite_new_user_pref_to_no_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_set_invite_new_user_pref_to_no_details`` tag with value
        ``val``.

        :param DomainInvitesSetInviteNewUserPrefToNoDetails val:
        :rtype: EventDetails
        """
        return cls('domain_invites_set_invite_new_user_pref_to_no_details', val)

    @classmethod
    def domain_invites_set_invite_new_user_pref_to_yes_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_set_invite_new_user_pref_to_yes_details`` tag with
        value ``val``.

        :param DomainInvitesSetInviteNewUserPrefToYesDetails val:
        :rtype: EventDetails
        """
        return cls('domain_invites_set_invite_new_user_pref_to_yes_details', val)

    @classmethod
    def domain_verification_add_domain_fail_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_verification_add_domain_fail_details`` tag with value ``val``.

        :param DomainVerificationAddDomainFailDetails val:
        :rtype: EventDetails
        """
        return cls('domain_verification_add_domain_fail_details', val)

    @classmethod
    def domain_verification_add_domain_success_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_verification_add_domain_success_details`` tag with value
        ``val``.

        :param DomainVerificationAddDomainSuccessDetails val:
        :rtype: EventDetails
        """
        return cls('domain_verification_add_domain_success_details', val)

    @classmethod
    def domain_verification_remove_domain_details(cls, val):
        """
        Create an instance of this class set to the
        ``domain_verification_remove_domain_details`` tag with value ``val``.

        :param DomainVerificationRemoveDomainDetails val:
        :rtype: EventDetails
        """
        return cls('domain_verification_remove_domain_details', val)

    @classmethod
    def enabled_domain_invites_details(cls, val):
        """
        Create an instance of this class set to the
        ``enabled_domain_invites_details`` tag with value ``val``.

        :param EnabledDomainInvitesDetails val:
        :rtype: EventDetails
        """
        return cls('enabled_domain_invites_details', val)

    @classmethod
    def apply_naming_convention_details(cls, val):
        """
        Create an instance of this class set to the
        ``apply_naming_convention_details`` tag with value ``val``.

        :param ApplyNamingConventionDetails val:
        :rtype: EventDetails
        """
        return cls('apply_naming_convention_details', val)

    @classmethod
    def create_folder_details(cls, val):
        """
        Create an instance of this class set to the ``create_folder_details``
        tag with value ``val``.

        :param CreateFolderDetails val:
        :rtype: EventDetails
        """
        return cls('create_folder_details', val)

    @classmethod
    def file_add_details(cls, val):
        """
        Create an instance of this class set to the ``file_add_details`` tag
        with value ``val``.

        :param FileAddDetails val:
        :rtype: EventDetails
        """
        return cls('file_add_details', val)

    @classmethod
    def file_copy_details(cls, val):
        """
        Create an instance of this class set to the ``file_copy_details`` tag
        with value ``val``.

        :param FileCopyDetails val:
        :rtype: EventDetails
        """
        return cls('file_copy_details', val)

    @classmethod
    def file_delete_details(cls, val):
        """
        Create an instance of this class set to the ``file_delete_details`` tag
        with value ``val``.

        :param FileDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('file_delete_details', val)

    @classmethod
    def file_download_details(cls, val):
        """
        Create an instance of this class set to the ``file_download_details``
        tag with value ``val``.

        :param FileDownloadDetails val:
        :rtype: EventDetails
        """
        return cls('file_download_details', val)

    @classmethod
    def file_edit_details(cls, val):
        """
        Create an instance of this class set to the ``file_edit_details`` tag
        with value ``val``.

        :param FileEditDetails val:
        :rtype: EventDetails
        """
        return cls('file_edit_details', val)

    @classmethod
    def file_get_copy_reference_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_get_copy_reference_details`` tag with value ``val``.

        :param FileGetCopyReferenceDetails val:
        :rtype: EventDetails
        """
        return cls('file_get_copy_reference_details', val)

    @classmethod
    def file_locking_lock_status_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_locking_lock_status_changed_details`` tag with value ``val``.

        :param FileLockingLockStatusChangedDetails val:
        :rtype: EventDetails
        """
        return cls('file_locking_lock_status_changed_details', val)

    @classmethod
    def file_move_details(cls, val):
        """
        Create an instance of this class set to the ``file_move_details`` tag
        with value ``val``.

        :param FileMoveDetails val:
        :rtype: EventDetails
        """
        return cls('file_move_details', val)

    @classmethod
    def file_permanently_delete_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_permanently_delete_details`` tag with value ``val``.

        :param FilePermanentlyDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('file_permanently_delete_details', val)

    @classmethod
    def file_preview_details(cls, val):
        """
        Create an instance of this class set to the ``file_preview_details`` tag
        with value ``val``.

        :param FilePreviewDetails val:
        :rtype: EventDetails
        """
        return cls('file_preview_details', val)

    @classmethod
    def file_rename_details(cls, val):
        """
        Create an instance of this class set to the ``file_rename_details`` tag
        with value ``val``.

        :param FileRenameDetails val:
        :rtype: EventDetails
        """
        return cls('file_rename_details', val)

    @classmethod
    def file_restore_details(cls, val):
        """
        Create an instance of this class set to the ``file_restore_details`` tag
        with value ``val``.

        :param FileRestoreDetails val:
        :rtype: EventDetails
        """
        return cls('file_restore_details', val)

    @classmethod
    def file_revert_details(cls, val):
        """
        Create an instance of this class set to the ``file_revert_details`` tag
        with value ``val``.

        :param FileRevertDetails val:
        :rtype: EventDetails
        """
        return cls('file_revert_details', val)

    @classmethod
    def file_rollback_changes_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_rollback_changes_details`` tag with value ``val``.

        :param FileRollbackChangesDetails val:
        :rtype: EventDetails
        """
        return cls('file_rollback_changes_details', val)

    @classmethod
    def file_save_copy_reference_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_save_copy_reference_details`` tag with value ``val``.

        :param FileSaveCopyReferenceDetails val:
        :rtype: EventDetails
        """
        return cls('file_save_copy_reference_details', val)

    @classmethod
    def folder_overview_description_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``folder_overview_description_changed_details`` tag with value ``val``.

        :param FolderOverviewDescriptionChangedDetails val:
        :rtype: EventDetails
        """
        return cls('folder_overview_description_changed_details', val)

    @classmethod
    def folder_overview_item_pinned_details(cls, val):
        """
        Create an instance of this class set to the
        ``folder_overview_item_pinned_details`` tag with value ``val``.

        :param FolderOverviewItemPinnedDetails val:
        :rtype: EventDetails
        """
        return cls('folder_overview_item_pinned_details', val)

    @classmethod
    def folder_overview_item_unpinned_details(cls, val):
        """
        Create an instance of this class set to the
        ``folder_overview_item_unpinned_details`` tag with value ``val``.

        :param FolderOverviewItemUnpinnedDetails val:
        :rtype: EventDetails
        """
        return cls('folder_overview_item_unpinned_details', val)

    @classmethod
    def object_label_added_details(cls, val):
        """
        Create an instance of this class set to the
        ``object_label_added_details`` tag with value ``val``.

        :param ObjectLabelAddedDetails val:
        :rtype: EventDetails
        """
        return cls('object_label_added_details', val)

    @classmethod
    def object_label_removed_details(cls, val):
        """
        Create an instance of this class set to the
        ``object_label_removed_details`` tag with value ``val``.

        :param ObjectLabelRemovedDetails val:
        :rtype: EventDetails
        """
        return cls('object_label_removed_details', val)

    @classmethod
    def object_label_updated_value_details(cls, val):
        """
        Create an instance of this class set to the
        ``object_label_updated_value_details`` tag with value ``val``.

        :param ObjectLabelUpdatedValueDetails val:
        :rtype: EventDetails
        """
        return cls('object_label_updated_value_details', val)

    @classmethod
    def organize_folder_with_tidy_details(cls, val):
        """
        Create an instance of this class set to the
        ``organize_folder_with_tidy_details`` tag with value ``val``.

        :param OrganizeFolderWithTidyDetails val:
        :rtype: EventDetails
        """
        return cls('organize_folder_with_tidy_details', val)

    @classmethod
    def rewind_folder_details(cls, val):
        """
        Create an instance of this class set to the ``rewind_folder_details``
        tag with value ``val``.

        :param RewindFolderDetails val:
        :rtype: EventDetails
        """
        return cls('rewind_folder_details', val)

    @classmethod
    def undo_naming_convention_details(cls, val):
        """
        Create an instance of this class set to the
        ``undo_naming_convention_details`` tag with value ``val``.

        :param UndoNamingConventionDetails val:
        :rtype: EventDetails
        """
        return cls('undo_naming_convention_details', val)

    @classmethod
    def undo_organize_folder_with_tidy_details(cls, val):
        """
        Create an instance of this class set to the
        ``undo_organize_folder_with_tidy_details`` tag with value ``val``.

        :param UndoOrganizeFolderWithTidyDetails val:
        :rtype: EventDetails
        """
        return cls('undo_organize_folder_with_tidy_details', val)

    @classmethod
    def user_tags_added_details(cls, val):
        """
        Create an instance of this class set to the ``user_tags_added_details``
        tag with value ``val``.

        :param UserTagsAddedDetails val:
        :rtype: EventDetails
        """
        return cls('user_tags_added_details', val)

    @classmethod
    def user_tags_removed_details(cls, val):
        """
        Create an instance of this class set to the
        ``user_tags_removed_details`` tag with value ``val``.

        :param UserTagsRemovedDetails val:
        :rtype: EventDetails
        """
        return cls('user_tags_removed_details', val)

    @classmethod
    def email_ingest_receive_file_details(cls, val):
        """
        Create an instance of this class set to the
        ``email_ingest_receive_file_details`` tag with value ``val``.

        :param EmailIngestReceiveFileDetails val:
        :rtype: EventDetails
        """
        return cls('email_ingest_receive_file_details', val)

    @classmethod
    def file_request_change_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_request_change_details`` tag with value ``val``.

        :param FileRequestChangeDetails val:
        :rtype: EventDetails
        """
        return cls('file_request_change_details', val)

    @classmethod
    def file_request_close_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_request_close_details`` tag with value ``val``.

        :param FileRequestCloseDetails val:
        :rtype: EventDetails
        """
        return cls('file_request_close_details', val)

    @classmethod
    def file_request_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_request_create_details`` tag with value ``val``.

        :param FileRequestCreateDetails val:
        :rtype: EventDetails
        """
        return cls('file_request_create_details', val)

    @classmethod
    def file_request_delete_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_request_delete_details`` tag with value ``val``.

        :param FileRequestDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('file_request_delete_details', val)

    @classmethod
    def file_request_receive_file_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_request_receive_file_details`` tag with value ``val``.

        :param FileRequestReceiveFileDetails val:
        :rtype: EventDetails
        """
        return cls('file_request_receive_file_details', val)

    @classmethod
    def group_add_external_id_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_add_external_id_details`` tag with value ``val``.

        :param GroupAddExternalIdDetails val:
        :rtype: EventDetails
        """
        return cls('group_add_external_id_details', val)

    @classmethod
    def group_add_member_details(cls, val):
        """
        Create an instance of this class set to the ``group_add_member_details``
        tag with value ``val``.

        :param GroupAddMemberDetails val:
        :rtype: EventDetails
        """
        return cls('group_add_member_details', val)

    @classmethod
    def group_change_external_id_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_change_external_id_details`` tag with value ``val``.

        :param GroupChangeExternalIdDetails val:
        :rtype: EventDetails
        """
        return cls('group_change_external_id_details', val)

    @classmethod
    def group_change_management_type_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_change_management_type_details`` tag with value ``val``.

        :param GroupChangeManagementTypeDetails val:
        :rtype: EventDetails
        """
        return cls('group_change_management_type_details', val)

    @classmethod
    def group_change_member_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_change_member_role_details`` tag with value ``val``.

        :param GroupChangeMemberRoleDetails val:
        :rtype: EventDetails
        """
        return cls('group_change_member_role_details', val)

    @classmethod
    def group_create_details(cls, val):
        """
        Create an instance of this class set to the ``group_create_details`` tag
        with value ``val``.

        :param GroupCreateDetails val:
        :rtype: EventDetails
        """
        return cls('group_create_details', val)

    @classmethod
    def group_delete_details(cls, val):
        """
        Create an instance of this class set to the ``group_delete_details`` tag
        with value ``val``.

        :param GroupDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('group_delete_details', val)

    @classmethod
    def group_description_updated_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_description_updated_details`` tag with value ``val``.

        :param GroupDescriptionUpdatedDetails val:
        :rtype: EventDetails
        """
        return cls('group_description_updated_details', val)

    @classmethod
    def group_join_policy_updated_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_join_policy_updated_details`` tag with value ``val``.

        :param GroupJoinPolicyUpdatedDetails val:
        :rtype: EventDetails
        """
        return cls('group_join_policy_updated_details', val)

    @classmethod
    def group_moved_details(cls, val):
        """
        Create an instance of this class set to the ``group_moved_details`` tag
        with value ``val``.

        :param GroupMovedDetails val:
        :rtype: EventDetails
        """
        return cls('group_moved_details', val)

    @classmethod
    def group_remove_external_id_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_remove_external_id_details`` tag with value ``val``.

        :param GroupRemoveExternalIdDetails val:
        :rtype: EventDetails
        """
        return cls('group_remove_external_id_details', val)

    @classmethod
    def group_remove_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_remove_member_details`` tag with value ``val``.

        :param GroupRemoveMemberDetails val:
        :rtype: EventDetails
        """
        return cls('group_remove_member_details', val)

    @classmethod
    def group_rename_details(cls, val):
        """
        Create an instance of this class set to the ``group_rename_details`` tag
        with value ``val``.

        :param GroupRenameDetails val:
        :rtype: EventDetails
        """
        return cls('group_rename_details', val)

    @classmethod
    def account_lock_or_unlocked_details(cls, val):
        """
        Create an instance of this class set to the
        ``account_lock_or_unlocked_details`` tag with value ``val``.

        :param AccountLockOrUnlockedDetails val:
        :rtype: EventDetails
        """
        return cls('account_lock_or_unlocked_details', val)

    @classmethod
    def emm_error_details(cls, val):
        """
        Create an instance of this class set to the ``emm_error_details`` tag
        with value ``val``.

        :param EmmErrorDetails val:
        :rtype: EventDetails
        """
        return cls('emm_error_details', val)

    @classmethod
    def guest_admin_signed_in_via_trusted_teams_details(cls, val):
        """
        Create an instance of this class set to the
        ``guest_admin_signed_in_via_trusted_teams_details`` tag with value
        ``val``.

        :param GuestAdminSignedInViaTrustedTeamsDetails val:
        :rtype: EventDetails
        """
        return cls('guest_admin_signed_in_via_trusted_teams_details', val)

    @classmethod
    def guest_admin_signed_out_via_trusted_teams_details(cls, val):
        """
        Create an instance of this class set to the
        ``guest_admin_signed_out_via_trusted_teams_details`` tag with value
        ``val``.

        :param GuestAdminSignedOutViaTrustedTeamsDetails val:
        :rtype: EventDetails
        """
        return cls('guest_admin_signed_out_via_trusted_teams_details', val)

    @classmethod
    def login_fail_details(cls, val):
        """
        Create an instance of this class set to the ``login_fail_details`` tag
        with value ``val``.

        :param LoginFailDetails val:
        :rtype: EventDetails
        """
        return cls('login_fail_details', val)

    @classmethod
    def login_success_details(cls, val):
        """
        Create an instance of this class set to the ``login_success_details``
        tag with value ``val``.

        :param LoginSuccessDetails val:
        :rtype: EventDetails
        """
        return cls('login_success_details', val)

    @classmethod
    def logout_details(cls, val):
        """
        Create an instance of this class set to the ``logout_details`` tag with
        value ``val``.

        :param LogoutDetails val:
        :rtype: EventDetails
        """
        return cls('logout_details', val)

    @classmethod
    def reseller_support_session_end_details(cls, val):
        """
        Create an instance of this class set to the
        ``reseller_support_session_end_details`` tag with value ``val``.

        :param ResellerSupportSessionEndDetails val:
        :rtype: EventDetails
        """
        return cls('reseller_support_session_end_details', val)

    @classmethod
    def reseller_support_session_start_details(cls, val):
        """
        Create an instance of this class set to the
        ``reseller_support_session_start_details`` tag with value ``val``.

        :param ResellerSupportSessionStartDetails val:
        :rtype: EventDetails
        """
        return cls('reseller_support_session_start_details', val)

    @classmethod
    def sign_in_as_session_end_details(cls, val):
        """
        Create an instance of this class set to the
        ``sign_in_as_session_end_details`` tag with value ``val``.

        :param SignInAsSessionEndDetails val:
        :rtype: EventDetails
        """
        return cls('sign_in_as_session_end_details', val)

    @classmethod
    def sign_in_as_session_start_details(cls, val):
        """
        Create an instance of this class set to the
        ``sign_in_as_session_start_details`` tag with value ``val``.

        :param SignInAsSessionStartDetails val:
        :rtype: EventDetails
        """
        return cls('sign_in_as_session_start_details', val)

    @classmethod
    def sso_error_details(cls, val):
        """
        Create an instance of this class set to the ``sso_error_details`` tag
        with value ``val``.

        :param SsoErrorDetails val:
        :rtype: EventDetails
        """
        return cls('sso_error_details', val)

    @classmethod
    def create_team_invite_link_details(cls, val):
        """
        Create an instance of this class set to the
        ``create_team_invite_link_details`` tag with value ``val``.

        :param CreateTeamInviteLinkDetails val:
        :rtype: EventDetails
        """
        return cls('create_team_invite_link_details', val)

    @classmethod
    def delete_team_invite_link_details(cls, val):
        """
        Create an instance of this class set to the
        ``delete_team_invite_link_details`` tag with value ``val``.

        :param DeleteTeamInviteLinkDetails val:
        :rtype: EventDetails
        """
        return cls('delete_team_invite_link_details', val)

    @classmethod
    def member_add_external_id_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_add_external_id_details`` tag with value ``val``.

        :param MemberAddExternalIdDetails val:
        :rtype: EventDetails
        """
        return cls('member_add_external_id_details', val)

    @classmethod
    def member_add_name_details(cls, val):
        """
        Create an instance of this class set to the ``member_add_name_details``
        tag with value ``val``.

        :param MemberAddNameDetails val:
        :rtype: EventDetails
        """
        return cls('member_add_name_details', val)

    @classmethod
    def member_change_admin_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_admin_role_details`` tag with value ``val``.

        :param MemberChangeAdminRoleDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_admin_role_details', val)

    @classmethod
    def member_change_email_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_email_details`` tag with value ``val``.

        :param MemberChangeEmailDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_email_details', val)

    @classmethod
    def member_change_external_id_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_external_id_details`` tag with value ``val``.

        :param MemberChangeExternalIdDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_external_id_details', val)

    @classmethod
    def member_change_membership_type_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_membership_type_details`` tag with value ``val``.

        :param MemberChangeMembershipTypeDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_membership_type_details', val)

    @classmethod
    def member_change_name_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_name_details`` tag with value ``val``.

        :param MemberChangeNameDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_name_details', val)

    @classmethod
    def member_change_reseller_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_reseller_role_details`` tag with value ``val``.

        :param MemberChangeResellerRoleDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_reseller_role_details', val)

    @classmethod
    def member_change_status_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_status_details`` tag with value ``val``.

        :param MemberChangeStatusDetails val:
        :rtype: EventDetails
        """
        return cls('member_change_status_details', val)

    @classmethod
    def member_delete_manual_contacts_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_delete_manual_contacts_details`` tag with value ``val``.

        :param MemberDeleteManualContactsDetails val:
        :rtype: EventDetails
        """
        return cls('member_delete_manual_contacts_details', val)

    @classmethod
    def member_delete_profile_photo_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_delete_profile_photo_details`` tag with value ``val``.

        :param MemberDeleteProfilePhotoDetails val:
        :rtype: EventDetails
        """
        return cls('member_delete_profile_photo_details', val)

    @classmethod
    def member_permanently_delete_account_contents_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_permanently_delete_account_contents_details`` tag with value
        ``val``.

        :param MemberPermanentlyDeleteAccountContentsDetails val:
        :rtype: EventDetails
        """
        return cls('member_permanently_delete_account_contents_details', val)

    @classmethod
    def member_remove_external_id_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_remove_external_id_details`` tag with value ``val``.

        :param MemberRemoveExternalIdDetails val:
        :rtype: EventDetails
        """
        return cls('member_remove_external_id_details', val)

    @classmethod
    def member_set_profile_photo_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_set_profile_photo_details`` tag with value ``val``.

        :param MemberSetProfilePhotoDetails val:
        :rtype: EventDetails
        """
        return cls('member_set_profile_photo_details', val)

    @classmethod
    def member_space_limits_add_custom_quota_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_add_custom_quota_details`` tag with value ``val``.

        :param MemberSpaceLimitsAddCustomQuotaDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_add_custom_quota_details', val)

    @classmethod
    def member_space_limits_change_custom_quota_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_custom_quota_details`` tag with value
        ``val``.

        :param MemberSpaceLimitsChangeCustomQuotaDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_change_custom_quota_details', val)

    @classmethod
    def member_space_limits_change_status_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_status_details`` tag with value ``val``.

        :param MemberSpaceLimitsChangeStatusDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_change_status_details', val)

    @classmethod
    def member_space_limits_remove_custom_quota_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_remove_custom_quota_details`` tag with value
        ``val``.

        :param MemberSpaceLimitsRemoveCustomQuotaDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_remove_custom_quota_details', val)

    @classmethod
    def member_suggest_details(cls, val):
        """
        Create an instance of this class set to the ``member_suggest_details``
        tag with value ``val``.

        :param MemberSuggestDetails val:
        :rtype: EventDetails
        """
        return cls('member_suggest_details', val)

    @classmethod
    def member_transfer_account_contents_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_transfer_account_contents_details`` tag with value ``val``.

        :param MemberTransferAccountContentsDetails val:
        :rtype: EventDetails
        """
        return cls('member_transfer_account_contents_details', val)

    @classmethod
    def pending_secondary_email_added_details(cls, val):
        """
        Create an instance of this class set to the
        ``pending_secondary_email_added_details`` tag with value ``val``.

        :param PendingSecondaryEmailAddedDetails val:
        :rtype: EventDetails
        """
        return cls('pending_secondary_email_added_details', val)

    @classmethod
    def secondary_email_deleted_details(cls, val):
        """
        Create an instance of this class set to the
        ``secondary_email_deleted_details`` tag with value ``val``.

        :param SecondaryEmailDeletedDetails val:
        :rtype: EventDetails
        """
        return cls('secondary_email_deleted_details', val)

    @classmethod
    def secondary_email_verified_details(cls, val):
        """
        Create an instance of this class set to the
        ``secondary_email_verified_details`` tag with value ``val``.

        :param SecondaryEmailVerifiedDetails val:
        :rtype: EventDetails
        """
        return cls('secondary_email_verified_details', val)

    @classmethod
    def secondary_mails_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``secondary_mails_policy_changed_details`` tag with value ``val``.

        :param SecondaryMailsPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('secondary_mails_policy_changed_details', val)

    @classmethod
    def binder_add_page_details(cls, val):
        """
        Create an instance of this class set to the ``binder_add_page_details``
        tag with value ``val``.

        :param BinderAddPageDetails val:
        :rtype: EventDetails
        """
        return cls('binder_add_page_details', val)

    @classmethod
    def binder_add_section_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_add_section_details`` tag with value ``val``.

        :param BinderAddSectionDetails val:
        :rtype: EventDetails
        """
        return cls('binder_add_section_details', val)

    @classmethod
    def binder_remove_page_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_remove_page_details`` tag with value ``val``.

        :param BinderRemovePageDetails val:
        :rtype: EventDetails
        """
        return cls('binder_remove_page_details', val)

    @classmethod
    def binder_remove_section_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_remove_section_details`` tag with value ``val``.

        :param BinderRemoveSectionDetails val:
        :rtype: EventDetails
        """
        return cls('binder_remove_section_details', val)

    @classmethod
    def binder_rename_page_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_rename_page_details`` tag with value ``val``.

        :param BinderRenamePageDetails val:
        :rtype: EventDetails
        """
        return cls('binder_rename_page_details', val)

    @classmethod
    def binder_rename_section_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_rename_section_details`` tag with value ``val``.

        :param BinderRenameSectionDetails val:
        :rtype: EventDetails
        """
        return cls('binder_rename_section_details', val)

    @classmethod
    def binder_reorder_page_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_reorder_page_details`` tag with value ``val``.

        :param BinderReorderPageDetails val:
        :rtype: EventDetails
        """
        return cls('binder_reorder_page_details', val)

    @classmethod
    def binder_reorder_section_details(cls, val):
        """
        Create an instance of this class set to the
        ``binder_reorder_section_details`` tag with value ``val``.

        :param BinderReorderSectionDetails val:
        :rtype: EventDetails
        """
        return cls('binder_reorder_section_details', val)

    @classmethod
    def paper_content_add_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_add_member_details`` tag with value ``val``.

        :param PaperContentAddMemberDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_add_member_details', val)

    @classmethod
    def paper_content_add_to_folder_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_add_to_folder_details`` tag with value ``val``.

        :param PaperContentAddToFolderDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_add_to_folder_details', val)

    @classmethod
    def paper_content_archive_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_archive_details`` tag with value ``val``.

        :param PaperContentArchiveDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_archive_details', val)

    @classmethod
    def paper_content_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_create_details`` tag with value ``val``.

        :param PaperContentCreateDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_create_details', val)

    @classmethod
    def paper_content_permanently_delete_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_permanently_delete_details`` tag with value ``val``.

        :param PaperContentPermanentlyDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_permanently_delete_details', val)

    @classmethod
    def paper_content_remove_from_folder_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_remove_from_folder_details`` tag with value ``val``.

        :param PaperContentRemoveFromFolderDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_remove_from_folder_details', val)

    @classmethod
    def paper_content_remove_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_remove_member_details`` tag with value ``val``.

        :param PaperContentRemoveMemberDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_remove_member_details', val)

    @classmethod
    def paper_content_rename_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_rename_details`` tag with value ``val``.

        :param PaperContentRenameDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_rename_details', val)

    @classmethod
    def paper_content_restore_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_restore_details`` tag with value ``val``.

        :param PaperContentRestoreDetails val:
        :rtype: EventDetails
        """
        return cls('paper_content_restore_details', val)

    @classmethod
    def paper_doc_add_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_add_comment_details`` tag with value ``val``.

        :param PaperDocAddCommentDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_add_comment_details', val)

    @classmethod
    def paper_doc_change_member_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_change_member_role_details`` tag with value ``val``.

        :param PaperDocChangeMemberRoleDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_change_member_role_details', val)

    @classmethod
    def paper_doc_change_sharing_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_change_sharing_policy_details`` tag with value ``val``.

        :param PaperDocChangeSharingPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_change_sharing_policy_details', val)

    @classmethod
    def paper_doc_change_subscription_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_change_subscription_details`` tag with value ``val``.

        :param PaperDocChangeSubscriptionDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_change_subscription_details', val)

    @classmethod
    def paper_doc_deleted_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_deleted_details`` tag with value ``val``.

        :param PaperDocDeletedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_deleted_details', val)

    @classmethod
    def paper_doc_delete_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_delete_comment_details`` tag with value ``val``.

        :param PaperDocDeleteCommentDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_delete_comment_details', val)

    @classmethod
    def paper_doc_download_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_download_details`` tag with value ``val``.

        :param PaperDocDownloadDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_download_details', val)

    @classmethod
    def paper_doc_edit_details(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_edit_details``
        tag with value ``val``.

        :param PaperDocEditDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_edit_details', val)

    @classmethod
    def paper_doc_edit_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_edit_comment_details`` tag with value ``val``.

        :param PaperDocEditCommentDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_edit_comment_details', val)

    @classmethod
    def paper_doc_followed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_followed_details`` tag with value ``val``.

        :param PaperDocFollowedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_followed_details', val)

    @classmethod
    def paper_doc_mention_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_mention_details`` tag with value ``val``.

        :param PaperDocMentionDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_mention_details', val)

    @classmethod
    def paper_doc_ownership_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_ownership_changed_details`` tag with value ``val``.

        :param PaperDocOwnershipChangedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_ownership_changed_details', val)

    @classmethod
    def paper_doc_request_access_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_request_access_details`` tag with value ``val``.

        :param PaperDocRequestAccessDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_request_access_details', val)

    @classmethod
    def paper_doc_resolve_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_resolve_comment_details`` tag with value ``val``.

        :param PaperDocResolveCommentDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_resolve_comment_details', val)

    @classmethod
    def paper_doc_revert_details(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_revert_details``
        tag with value ``val``.

        :param PaperDocRevertDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_revert_details', val)

    @classmethod
    def paper_doc_slack_share_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_slack_share_details`` tag with value ``val``.

        :param PaperDocSlackShareDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_slack_share_details', val)

    @classmethod
    def paper_doc_team_invite_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_team_invite_details`` tag with value ``val``.

        :param PaperDocTeamInviteDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_team_invite_details', val)

    @classmethod
    def paper_doc_trashed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_trashed_details`` tag with value ``val``.

        :param PaperDocTrashedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_trashed_details', val)

    @classmethod
    def paper_doc_unresolve_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_unresolve_comment_details`` tag with value ``val``.

        :param PaperDocUnresolveCommentDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_unresolve_comment_details', val)

    @classmethod
    def paper_doc_untrashed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_untrashed_details`` tag with value ``val``.

        :param PaperDocUntrashedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_untrashed_details', val)

    @classmethod
    def paper_doc_view_details(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_view_details``
        tag with value ``val``.

        :param PaperDocViewDetails val:
        :rtype: EventDetails
        """
        return cls('paper_doc_view_details', val)

    @classmethod
    def paper_external_view_allow_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_external_view_allow_details`` tag with value ``val``.

        :param PaperExternalViewAllowDetails val:
        :rtype: EventDetails
        """
        return cls('paper_external_view_allow_details', val)

    @classmethod
    def paper_external_view_default_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_external_view_default_team_details`` tag with value ``val``.

        :param PaperExternalViewDefaultTeamDetails val:
        :rtype: EventDetails
        """
        return cls('paper_external_view_default_team_details', val)

    @classmethod
    def paper_external_view_forbid_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_external_view_forbid_details`` tag with value ``val``.

        :param PaperExternalViewForbidDetails val:
        :rtype: EventDetails
        """
        return cls('paper_external_view_forbid_details', val)

    @classmethod
    def paper_folder_change_subscription_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_folder_change_subscription_details`` tag with value ``val``.

        :param PaperFolderChangeSubscriptionDetails val:
        :rtype: EventDetails
        """
        return cls('paper_folder_change_subscription_details', val)

    @classmethod
    def paper_folder_deleted_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_folder_deleted_details`` tag with value ``val``.

        :param PaperFolderDeletedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_folder_deleted_details', val)

    @classmethod
    def paper_folder_followed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_folder_followed_details`` tag with value ``val``.

        :param PaperFolderFollowedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_folder_followed_details', val)

    @classmethod
    def paper_folder_team_invite_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_folder_team_invite_details`` tag with value ``val``.

        :param PaperFolderTeamInviteDetails val:
        :rtype: EventDetails
        """
        return cls('paper_folder_team_invite_details', val)

    @classmethod
    def paper_published_link_change_permission_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_change_permission_details`` tag with value
        ``val``.

        :param PaperPublishedLinkChangePermissionDetails val:
        :rtype: EventDetails
        """
        return cls('paper_published_link_change_permission_details', val)

    @classmethod
    def paper_published_link_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_create_details`` tag with value ``val``.

        :param PaperPublishedLinkCreateDetails val:
        :rtype: EventDetails
        """
        return cls('paper_published_link_create_details', val)

    @classmethod
    def paper_published_link_disabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_disabled_details`` tag with value ``val``.

        :param PaperPublishedLinkDisabledDetails val:
        :rtype: EventDetails
        """
        return cls('paper_published_link_disabled_details', val)

    @classmethod
    def paper_published_link_view_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_view_details`` tag with value ``val``.

        :param PaperPublishedLinkViewDetails val:
        :rtype: EventDetails
        """
        return cls('paper_published_link_view_details', val)

    @classmethod
    def password_change_details(cls, val):
        """
        Create an instance of this class set to the ``password_change_details``
        tag with value ``val``.

        :param PasswordChangeDetails val:
        :rtype: EventDetails
        """
        return cls('password_change_details', val)

    @classmethod
    def password_reset_details(cls, val):
        """
        Create an instance of this class set to the ``password_reset_details``
        tag with value ``val``.

        :param PasswordResetDetails val:
        :rtype: EventDetails
        """
        return cls('password_reset_details', val)

    @classmethod
    def password_reset_all_details(cls, val):
        """
        Create an instance of this class set to the
        ``password_reset_all_details`` tag with value ``val``.

        :param PasswordResetAllDetails val:
        :rtype: EventDetails
        """
        return cls('password_reset_all_details', val)

    @classmethod
    def classification_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``classification_create_report_details`` tag with value ``val``.

        :param ClassificationCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('classification_create_report_details', val)

    @classmethod
    def classification_create_report_fail_details(cls, val):
        """
        Create an instance of this class set to the
        ``classification_create_report_fail_details`` tag with value ``val``.

        :param ClassificationCreateReportFailDetails val:
        :rtype: EventDetails
        """
        return cls('classification_create_report_fail_details', val)

    @classmethod
    def emm_create_exceptions_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``emm_create_exceptions_report_details`` tag with value ``val``.

        :param EmmCreateExceptionsReportDetails val:
        :rtype: EventDetails
        """
        return cls('emm_create_exceptions_report_details', val)

    @classmethod
    def emm_create_usage_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``emm_create_usage_report_details`` tag with value ``val``.

        :param EmmCreateUsageReportDetails val:
        :rtype: EventDetails
        """
        return cls('emm_create_usage_report_details', val)

    @classmethod
    def export_members_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``export_members_report_details`` tag with value ``val``.

        :param ExportMembersReportDetails val:
        :rtype: EventDetails
        """
        return cls('export_members_report_details', val)

    @classmethod
    def export_members_report_fail_details(cls, val):
        """
        Create an instance of this class set to the
        ``export_members_report_fail_details`` tag with value ``val``.

        :param ExportMembersReportFailDetails val:
        :rtype: EventDetails
        """
        return cls('export_members_report_fail_details', val)

    @classmethod
    def external_sharing_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``external_sharing_create_report_details`` tag with value ``val``.

        :param ExternalSharingCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('external_sharing_create_report_details', val)

    @classmethod
    def external_sharing_report_failed_details(cls, val):
        """
        Create an instance of this class set to the
        ``external_sharing_report_failed_details`` tag with value ``val``.

        :param ExternalSharingReportFailedDetails val:
        :rtype: EventDetails
        """
        return cls('external_sharing_report_failed_details', val)

    @classmethod
    def no_expiration_link_gen_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``no_expiration_link_gen_create_report_details`` tag with value ``val``.

        :param NoExpirationLinkGenCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('no_expiration_link_gen_create_report_details', val)

    @classmethod
    def no_expiration_link_gen_report_failed_details(cls, val):
        """
        Create an instance of this class set to the
        ``no_expiration_link_gen_report_failed_details`` tag with value ``val``.

        :param NoExpirationLinkGenReportFailedDetails val:
        :rtype: EventDetails
        """
        return cls('no_expiration_link_gen_report_failed_details', val)

    @classmethod
    def no_password_link_gen_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_gen_create_report_details`` tag with value ``val``.

        :param NoPasswordLinkGenCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('no_password_link_gen_create_report_details', val)

    @classmethod
    def no_password_link_gen_report_failed_details(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_gen_report_failed_details`` tag with value ``val``.

        :param NoPasswordLinkGenReportFailedDetails val:
        :rtype: EventDetails
        """
        return cls('no_password_link_gen_report_failed_details', val)

    @classmethod
    def no_password_link_view_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_view_create_report_details`` tag with value ``val``.

        :param NoPasswordLinkViewCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('no_password_link_view_create_report_details', val)

    @classmethod
    def no_password_link_view_report_failed_details(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_view_report_failed_details`` tag with value ``val``.

        :param NoPasswordLinkViewReportFailedDetails val:
        :rtype: EventDetails
        """
        return cls('no_password_link_view_report_failed_details', val)

    @classmethod
    def outdated_link_view_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``outdated_link_view_create_report_details`` tag with value ``val``.

        :param OutdatedLinkViewCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('outdated_link_view_create_report_details', val)

    @classmethod
    def outdated_link_view_report_failed_details(cls, val):
        """
        Create an instance of this class set to the
        ``outdated_link_view_report_failed_details`` tag with value ``val``.

        :param OutdatedLinkViewReportFailedDetails val:
        :rtype: EventDetails
        """
        return cls('outdated_link_view_report_failed_details', val)

    @classmethod
    def paper_admin_export_start_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_admin_export_start_details`` tag with value ``val``.

        :param PaperAdminExportStartDetails val:
        :rtype: EventDetails
        """
        return cls('paper_admin_export_start_details', val)

    @classmethod
    def smart_sync_create_admin_privilege_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``smart_sync_create_admin_privilege_report_details`` tag with value
        ``val``.

        :param SmartSyncCreateAdminPrivilegeReportDetails val:
        :rtype: EventDetails
        """
        return cls('smart_sync_create_admin_privilege_report_details', val)

    @classmethod
    def team_activity_create_report_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_activity_create_report_details`` tag with value ``val``.

        :param TeamActivityCreateReportDetails val:
        :rtype: EventDetails
        """
        return cls('team_activity_create_report_details', val)

    @classmethod
    def team_activity_create_report_fail_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_activity_create_report_fail_details`` tag with value ``val``.

        :param TeamActivityCreateReportFailDetails val:
        :rtype: EventDetails
        """
        return cls('team_activity_create_report_fail_details', val)

    @classmethod
    def collection_share_details(cls, val):
        """
        Create an instance of this class set to the ``collection_share_details``
        tag with value ``val``.

        :param CollectionShareDetails val:
        :rtype: EventDetails
        """
        return cls('collection_share_details', val)

    @classmethod
    def file_transfers_file_add_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_file_add_details`` tag with value ``val``.

        :param FileTransfersFileAddDetails val:
        :rtype: EventDetails
        """
        return cls('file_transfers_file_add_details', val)

    @classmethod
    def file_transfers_transfer_delete_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_delete_details`` tag with value ``val``.

        :param FileTransfersTransferDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('file_transfers_transfer_delete_details', val)

    @classmethod
    def file_transfers_transfer_download_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_download_details`` tag with value ``val``.

        :param FileTransfersTransferDownloadDetails val:
        :rtype: EventDetails
        """
        return cls('file_transfers_transfer_download_details', val)

    @classmethod
    def file_transfers_transfer_send_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_send_details`` tag with value ``val``.

        :param FileTransfersTransferSendDetails val:
        :rtype: EventDetails
        """
        return cls('file_transfers_transfer_send_details', val)

    @classmethod
    def file_transfers_transfer_view_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_view_details`` tag with value ``val``.

        :param FileTransfersTransferViewDetails val:
        :rtype: EventDetails
        """
        return cls('file_transfers_transfer_view_details', val)

    @classmethod
    def note_acl_invite_only_details(cls, val):
        """
        Create an instance of this class set to the
        ``note_acl_invite_only_details`` tag with value ``val``.

        :param NoteAclInviteOnlyDetails val:
        :rtype: EventDetails
        """
        return cls('note_acl_invite_only_details', val)

    @classmethod
    def note_acl_link_details(cls, val):
        """
        Create an instance of this class set to the ``note_acl_link_details``
        tag with value ``val``.

        :param NoteAclLinkDetails val:
        :rtype: EventDetails
        """
        return cls('note_acl_link_details', val)

    @classmethod
    def note_acl_team_link_details(cls, val):
        """
        Create an instance of this class set to the
        ``note_acl_team_link_details`` tag with value ``val``.

        :param NoteAclTeamLinkDetails val:
        :rtype: EventDetails
        """
        return cls('note_acl_team_link_details', val)

    @classmethod
    def note_shared_details(cls, val):
        """
        Create an instance of this class set to the ``note_shared_details`` tag
        with value ``val``.

        :param NoteSharedDetails val:
        :rtype: EventDetails
        """
        return cls('note_shared_details', val)

    @classmethod
    def note_share_receive_details(cls, val):
        """
        Create an instance of this class set to the
        ``note_share_receive_details`` tag with value ``val``.

        :param NoteShareReceiveDetails val:
        :rtype: EventDetails
        """
        return cls('note_share_receive_details', val)

    @classmethod
    def open_note_shared_details(cls, val):
        """
        Create an instance of this class set to the ``open_note_shared_details``
        tag with value ``val``.

        :param OpenNoteSharedDetails val:
        :rtype: EventDetails
        """
        return cls('open_note_shared_details', val)

    @classmethod
    def sf_add_group_details(cls, val):
        """
        Create an instance of this class set to the ``sf_add_group_details`` tag
        with value ``val``.

        :param SfAddGroupDetails val:
        :rtype: EventDetails
        """
        return cls('sf_add_group_details', val)

    @classmethod
    def sf_allow_non_members_to_view_shared_links_details(cls, val):
        """
        Create an instance of this class set to the
        ``sf_allow_non_members_to_view_shared_links_details`` tag with value
        ``val``.

        :param SfAllowNonMembersToViewSharedLinksDetails val:
        :rtype: EventDetails
        """
        return cls('sf_allow_non_members_to_view_shared_links_details', val)

    @classmethod
    def sf_external_invite_warn_details(cls, val):
        """
        Create an instance of this class set to the
        ``sf_external_invite_warn_details`` tag with value ``val``.

        :param SfExternalInviteWarnDetails val:
        :rtype: EventDetails
        """
        return cls('sf_external_invite_warn_details', val)

    @classmethod
    def sf_fb_invite_details(cls, val):
        """
        Create an instance of this class set to the ``sf_fb_invite_details`` tag
        with value ``val``.

        :param SfFbInviteDetails val:
        :rtype: EventDetails
        """
        return cls('sf_fb_invite_details', val)

    @classmethod
    def sf_fb_invite_change_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``sf_fb_invite_change_role_details`` tag with value ``val``.

        :param SfFbInviteChangeRoleDetails val:
        :rtype: EventDetails
        """
        return cls('sf_fb_invite_change_role_details', val)

    @classmethod
    def sf_fb_uninvite_details(cls, val):
        """
        Create an instance of this class set to the ``sf_fb_uninvite_details``
        tag with value ``val``.

        :param SfFbUninviteDetails val:
        :rtype: EventDetails
        """
        return cls('sf_fb_uninvite_details', val)

    @classmethod
    def sf_invite_group_details(cls, val):
        """
        Create an instance of this class set to the ``sf_invite_group_details``
        tag with value ``val``.

        :param SfInviteGroupDetails val:
        :rtype: EventDetails
        """
        return cls('sf_invite_group_details', val)

    @classmethod
    def sf_team_grant_access_details(cls, val):
        """
        Create an instance of this class set to the
        ``sf_team_grant_access_details`` tag with value ``val``.

        :param SfTeamGrantAccessDetails val:
        :rtype: EventDetails
        """
        return cls('sf_team_grant_access_details', val)

    @classmethod
    def sf_team_invite_details(cls, val):
        """
        Create an instance of this class set to the ``sf_team_invite_details``
        tag with value ``val``.

        :param SfTeamInviteDetails val:
        :rtype: EventDetails
        """
        return cls('sf_team_invite_details', val)

    @classmethod
    def sf_team_invite_change_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``sf_team_invite_change_role_details`` tag with value ``val``.

        :param SfTeamInviteChangeRoleDetails val:
        :rtype: EventDetails
        """
        return cls('sf_team_invite_change_role_details', val)

    @classmethod
    def sf_team_join_details(cls, val):
        """
        Create an instance of this class set to the ``sf_team_join_details`` tag
        with value ``val``.

        :param SfTeamJoinDetails val:
        :rtype: EventDetails
        """
        return cls('sf_team_join_details', val)

    @classmethod
    def sf_team_join_from_oob_link_details(cls, val):
        """
        Create an instance of this class set to the
        ``sf_team_join_from_oob_link_details`` tag with value ``val``.

        :param SfTeamJoinFromOobLinkDetails val:
        :rtype: EventDetails
        """
        return cls('sf_team_join_from_oob_link_details', val)

    @classmethod
    def sf_team_uninvite_details(cls, val):
        """
        Create an instance of this class set to the ``sf_team_uninvite_details``
        tag with value ``val``.

        :param SfTeamUninviteDetails val:
        :rtype: EventDetails
        """
        return cls('sf_team_uninvite_details', val)

    @classmethod
    def shared_content_add_invitees_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_invitees_details`` tag with value ``val``.

        :param SharedContentAddInviteesDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_add_invitees_details', val)

    @classmethod
    def shared_content_add_link_expiry_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_link_expiry_details`` tag with value ``val``.

        :param SharedContentAddLinkExpiryDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_add_link_expiry_details', val)

    @classmethod
    def shared_content_add_link_password_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_link_password_details`` tag with value ``val``.

        :param SharedContentAddLinkPasswordDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_add_link_password_details', val)

    @classmethod
    def shared_content_add_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_member_details`` tag with value ``val``.

        :param SharedContentAddMemberDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_add_member_details', val)

    @classmethod
    def shared_content_change_downloads_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_downloads_policy_details`` tag with value
        ``val``.

        :param SharedContentChangeDownloadsPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_downloads_policy_details', val)

    @classmethod
    def shared_content_change_invitee_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_invitee_role_details`` tag with value ``val``.

        :param SharedContentChangeInviteeRoleDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_invitee_role_details', val)

    @classmethod
    def shared_content_change_link_audience_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_link_audience_details`` tag with value ``val``.

        :param SharedContentChangeLinkAudienceDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_link_audience_details', val)

    @classmethod
    def shared_content_change_link_expiry_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_link_expiry_details`` tag with value ``val``.

        :param SharedContentChangeLinkExpiryDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_link_expiry_details', val)

    @classmethod
    def shared_content_change_link_password_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_link_password_details`` tag with value ``val``.

        :param SharedContentChangeLinkPasswordDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_link_password_details', val)

    @classmethod
    def shared_content_change_member_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_member_role_details`` tag with value ``val``.

        :param SharedContentChangeMemberRoleDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_member_role_details', val)

    @classmethod
    def shared_content_change_viewer_info_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_viewer_info_policy_details`` tag with value
        ``val``.

        :param SharedContentChangeViewerInfoPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_change_viewer_info_policy_details', val)

    @classmethod
    def shared_content_claim_invitation_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_claim_invitation_details`` tag with value ``val``.

        :param SharedContentClaimInvitationDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_claim_invitation_details', val)

    @classmethod
    def shared_content_copy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_copy_details`` tag with value ``val``.

        :param SharedContentCopyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_copy_details', val)

    @classmethod
    def shared_content_download_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_download_details`` tag with value ``val``.

        :param SharedContentDownloadDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_download_details', val)

    @classmethod
    def shared_content_relinquish_membership_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_relinquish_membership_details`` tag with value ``val``.

        :param SharedContentRelinquishMembershipDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_relinquish_membership_details', val)

    @classmethod
    def shared_content_remove_invitees_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_invitees_details`` tag with value ``val``.

        :param SharedContentRemoveInviteesDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_remove_invitees_details', val)

    @classmethod
    def shared_content_remove_link_expiry_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_link_expiry_details`` tag with value ``val``.

        :param SharedContentRemoveLinkExpiryDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_remove_link_expiry_details', val)

    @classmethod
    def shared_content_remove_link_password_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_link_password_details`` tag with value ``val``.

        :param SharedContentRemoveLinkPasswordDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_remove_link_password_details', val)

    @classmethod
    def shared_content_remove_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_member_details`` tag with value ``val``.

        :param SharedContentRemoveMemberDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_remove_member_details', val)

    @classmethod
    def shared_content_request_access_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_request_access_details`` tag with value ``val``.

        :param SharedContentRequestAccessDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_request_access_details', val)

    @classmethod
    def shared_content_restore_invitees_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_restore_invitees_details`` tag with value ``val``.

        :param SharedContentRestoreInviteesDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_restore_invitees_details', val)

    @classmethod
    def shared_content_restore_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_restore_member_details`` tag with value ``val``.

        :param SharedContentRestoreMemberDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_restore_member_details', val)

    @classmethod
    def shared_content_unshare_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_unshare_details`` tag with value ``val``.

        :param SharedContentUnshareDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_unshare_details', val)

    @classmethod
    def shared_content_view_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_view_details`` tag with value ``val``.

        :param SharedContentViewDetails val:
        :rtype: EventDetails
        """
        return cls('shared_content_view_details', val)

    @classmethod
    def shared_folder_change_link_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_link_policy_details`` tag with value ``val``.

        :param SharedFolderChangeLinkPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_change_link_policy_details', val)

    @classmethod
    def shared_folder_change_members_inheritance_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_members_inheritance_policy_details`` tag with
        value ``val``.

        :param SharedFolderChangeMembersInheritancePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_change_members_inheritance_policy_details', val)

    @classmethod
    def shared_folder_change_members_management_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_members_management_policy_details`` tag with
        value ``val``.

        :param SharedFolderChangeMembersManagementPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_change_members_management_policy_details', val)

    @classmethod
    def shared_folder_change_members_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_members_policy_details`` tag with value ``val``.

        :param SharedFolderChangeMembersPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_change_members_policy_details', val)

    @classmethod
    def shared_folder_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_create_details`` tag with value ``val``.

        :param SharedFolderCreateDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_create_details', val)

    @classmethod
    def shared_folder_decline_invitation_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_decline_invitation_details`` tag with value ``val``.

        :param SharedFolderDeclineInvitationDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_decline_invitation_details', val)

    @classmethod
    def shared_folder_mount_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_mount_details`` tag with value ``val``.

        :param SharedFolderMountDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_mount_details', val)

    @classmethod
    def shared_folder_nest_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_nest_details`` tag with value ``val``.

        :param SharedFolderNestDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_nest_details', val)

    @classmethod
    def shared_folder_transfer_ownership_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_transfer_ownership_details`` tag with value ``val``.

        :param SharedFolderTransferOwnershipDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_transfer_ownership_details', val)

    @classmethod
    def shared_folder_unmount_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_unmount_details`` tag with value ``val``.

        :param SharedFolderUnmountDetails val:
        :rtype: EventDetails
        """
        return cls('shared_folder_unmount_details', val)

    @classmethod
    def shared_link_add_expiry_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_add_expiry_details`` tag with value ``val``.

        :param SharedLinkAddExpiryDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_add_expiry_details', val)

    @classmethod
    def shared_link_change_expiry_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_change_expiry_details`` tag with value ``val``.

        :param SharedLinkChangeExpiryDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_change_expiry_details', val)

    @classmethod
    def shared_link_change_visibility_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_change_visibility_details`` tag with value ``val``.

        :param SharedLinkChangeVisibilityDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_change_visibility_details', val)

    @classmethod
    def shared_link_copy_details(cls, val):
        """
        Create an instance of this class set to the ``shared_link_copy_details``
        tag with value ``val``.

        :param SharedLinkCopyDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_copy_details', val)

    @classmethod
    def shared_link_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_create_details`` tag with value ``val``.

        :param SharedLinkCreateDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_create_details', val)

    @classmethod
    def shared_link_disable_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_disable_details`` tag with value ``val``.

        :param SharedLinkDisableDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_disable_details', val)

    @classmethod
    def shared_link_download_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_download_details`` tag with value ``val``.

        :param SharedLinkDownloadDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_download_details', val)

    @classmethod
    def shared_link_remove_expiry_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_remove_expiry_details`` tag with value ``val``.

        :param SharedLinkRemoveExpiryDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_remove_expiry_details', val)

    @classmethod
    def shared_link_settings_add_expiration_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_add_expiration_details`` tag with value ``val``.

        :param SharedLinkSettingsAddExpirationDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_add_expiration_details', val)

    @classmethod
    def shared_link_settings_add_password_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_add_password_details`` tag with value ``val``.

        :param SharedLinkSettingsAddPasswordDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_add_password_details', val)

    @classmethod
    def shared_link_settings_allow_download_disabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_allow_download_disabled_details`` tag with value
        ``val``.

        :param SharedLinkSettingsAllowDownloadDisabledDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_allow_download_disabled_details', val)

    @classmethod
    def shared_link_settings_allow_download_enabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_allow_download_enabled_details`` tag with value
        ``val``.

        :param SharedLinkSettingsAllowDownloadEnabledDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_allow_download_enabled_details', val)

    @classmethod
    def shared_link_settings_change_audience_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_change_audience_details`` tag with value ``val``.

        :param SharedLinkSettingsChangeAudienceDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_change_audience_details', val)

    @classmethod
    def shared_link_settings_change_expiration_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_change_expiration_details`` tag with value
        ``val``.

        :param SharedLinkSettingsChangeExpirationDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_change_expiration_details', val)

    @classmethod
    def shared_link_settings_change_password_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_change_password_details`` tag with value ``val``.

        :param SharedLinkSettingsChangePasswordDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_change_password_details', val)

    @classmethod
    def shared_link_settings_remove_expiration_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_remove_expiration_details`` tag with value
        ``val``.

        :param SharedLinkSettingsRemoveExpirationDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_remove_expiration_details', val)

    @classmethod
    def shared_link_settings_remove_password_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_remove_password_details`` tag with value ``val``.

        :param SharedLinkSettingsRemovePasswordDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_settings_remove_password_details', val)

    @classmethod
    def shared_link_share_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_share_details`` tag with value ``val``.

        :param SharedLinkShareDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_share_details', val)

    @classmethod
    def shared_link_view_details(cls, val):
        """
        Create an instance of this class set to the ``shared_link_view_details``
        tag with value ``val``.

        :param SharedLinkViewDetails val:
        :rtype: EventDetails
        """
        return cls('shared_link_view_details', val)

    @classmethod
    def shared_note_opened_details(cls, val):
        """
        Create an instance of this class set to the
        ``shared_note_opened_details`` tag with value ``val``.

        :param SharedNoteOpenedDetails val:
        :rtype: EventDetails
        """
        return cls('shared_note_opened_details', val)

    @classmethod
    def shmodel_disable_downloads_details(cls, val):
        """
        Create an instance of this class set to the
        ``shmodel_disable_downloads_details`` tag with value ``val``.

        :param ShmodelDisableDownloadsDetails val:
        :rtype: EventDetails
        """
        return cls('shmodel_disable_downloads_details', val)

    @classmethod
    def shmodel_enable_downloads_details(cls, val):
        """
        Create an instance of this class set to the
        ``shmodel_enable_downloads_details`` tag with value ``val``.

        :param ShmodelEnableDownloadsDetails val:
        :rtype: EventDetails
        """
        return cls('shmodel_enable_downloads_details', val)

    @classmethod
    def shmodel_group_share_details(cls, val):
        """
        Create an instance of this class set to the
        ``shmodel_group_share_details`` tag with value ``val``.

        :param ShmodelGroupShareDetails val:
        :rtype: EventDetails
        """
        return cls('shmodel_group_share_details', val)

    @classmethod
    def showcase_access_granted_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_access_granted_details`` tag with value ``val``.

        :param ShowcaseAccessGrantedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_access_granted_details', val)

    @classmethod
    def showcase_add_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_add_member_details`` tag with value ``val``.

        :param ShowcaseAddMemberDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_add_member_details', val)

    @classmethod
    def showcase_archived_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_archived_details`` tag with value ``val``.

        :param ShowcaseArchivedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_archived_details', val)

    @classmethod
    def showcase_created_details(cls, val):
        """
        Create an instance of this class set to the ``showcase_created_details``
        tag with value ``val``.

        :param ShowcaseCreatedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_created_details', val)

    @classmethod
    def showcase_delete_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_delete_comment_details`` tag with value ``val``.

        :param ShowcaseDeleteCommentDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_delete_comment_details', val)

    @classmethod
    def showcase_edited_details(cls, val):
        """
        Create an instance of this class set to the ``showcase_edited_details``
        tag with value ``val``.

        :param ShowcaseEditedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_edited_details', val)

    @classmethod
    def showcase_edit_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_edit_comment_details`` tag with value ``val``.

        :param ShowcaseEditCommentDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_edit_comment_details', val)

    @classmethod
    def showcase_file_added_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_file_added_details`` tag with value ``val``.

        :param ShowcaseFileAddedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_file_added_details', val)

    @classmethod
    def showcase_file_download_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_file_download_details`` tag with value ``val``.

        :param ShowcaseFileDownloadDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_file_download_details', val)

    @classmethod
    def showcase_file_removed_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_file_removed_details`` tag with value ``val``.

        :param ShowcaseFileRemovedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_file_removed_details', val)

    @classmethod
    def showcase_file_view_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_file_view_details`` tag with value ``val``.

        :param ShowcaseFileViewDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_file_view_details', val)

    @classmethod
    def showcase_permanently_deleted_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_permanently_deleted_details`` tag with value ``val``.

        :param ShowcasePermanentlyDeletedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_permanently_deleted_details', val)

    @classmethod
    def showcase_post_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_post_comment_details`` tag with value ``val``.

        :param ShowcasePostCommentDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_post_comment_details', val)

    @classmethod
    def showcase_remove_member_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_remove_member_details`` tag with value ``val``.

        :param ShowcaseRemoveMemberDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_remove_member_details', val)

    @classmethod
    def showcase_renamed_details(cls, val):
        """
        Create an instance of this class set to the ``showcase_renamed_details``
        tag with value ``val``.

        :param ShowcaseRenamedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_renamed_details', val)

    @classmethod
    def showcase_request_access_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_request_access_details`` tag with value ``val``.

        :param ShowcaseRequestAccessDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_request_access_details', val)

    @classmethod
    def showcase_resolve_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_resolve_comment_details`` tag with value ``val``.

        :param ShowcaseResolveCommentDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_resolve_comment_details', val)

    @classmethod
    def showcase_restored_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_restored_details`` tag with value ``val``.

        :param ShowcaseRestoredDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_restored_details', val)

    @classmethod
    def showcase_trashed_details(cls, val):
        """
        Create an instance of this class set to the ``showcase_trashed_details``
        tag with value ``val``.

        :param ShowcaseTrashedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_trashed_details', val)

    @classmethod
    def showcase_trashed_deprecated_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_trashed_deprecated_details`` tag with value ``val``.

        :param ShowcaseTrashedDeprecatedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_trashed_deprecated_details', val)

    @classmethod
    def showcase_unresolve_comment_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_unresolve_comment_details`` tag with value ``val``.

        :param ShowcaseUnresolveCommentDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_unresolve_comment_details', val)

    @classmethod
    def showcase_untrashed_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_untrashed_details`` tag with value ``val``.

        :param ShowcaseUntrashedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_untrashed_details', val)

    @classmethod
    def showcase_untrashed_deprecated_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_untrashed_deprecated_details`` tag with value ``val``.

        :param ShowcaseUntrashedDeprecatedDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_untrashed_deprecated_details', val)

    @classmethod
    def showcase_view_details(cls, val):
        """
        Create an instance of this class set to the ``showcase_view_details``
        tag with value ``val``.

        :param ShowcaseViewDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_view_details', val)

    @classmethod
    def sso_add_cert_details(cls, val):
        """
        Create an instance of this class set to the ``sso_add_cert_details`` tag
        with value ``val``.

        :param SsoAddCertDetails val:
        :rtype: EventDetails
        """
        return cls('sso_add_cert_details', val)

    @classmethod
    def sso_add_login_url_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_add_login_url_details`` tag with value ``val``.

        :param SsoAddLoginUrlDetails val:
        :rtype: EventDetails
        """
        return cls('sso_add_login_url_details', val)

    @classmethod
    def sso_add_logout_url_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_add_logout_url_details`` tag with value ``val``.

        :param SsoAddLogoutUrlDetails val:
        :rtype: EventDetails
        """
        return cls('sso_add_logout_url_details', val)

    @classmethod
    def sso_change_cert_details(cls, val):
        """
        Create an instance of this class set to the ``sso_change_cert_details``
        tag with value ``val``.

        :param SsoChangeCertDetails val:
        :rtype: EventDetails
        """
        return cls('sso_change_cert_details', val)

    @classmethod
    def sso_change_login_url_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_change_login_url_details`` tag with value ``val``.

        :param SsoChangeLoginUrlDetails val:
        :rtype: EventDetails
        """
        return cls('sso_change_login_url_details', val)

    @classmethod
    def sso_change_logout_url_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_change_logout_url_details`` tag with value ``val``.

        :param SsoChangeLogoutUrlDetails val:
        :rtype: EventDetails
        """
        return cls('sso_change_logout_url_details', val)

    @classmethod
    def sso_change_saml_identity_mode_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_change_saml_identity_mode_details`` tag with value ``val``.

        :param SsoChangeSamlIdentityModeDetails val:
        :rtype: EventDetails
        """
        return cls('sso_change_saml_identity_mode_details', val)

    @classmethod
    def sso_remove_cert_details(cls, val):
        """
        Create an instance of this class set to the ``sso_remove_cert_details``
        tag with value ``val``.

        :param SsoRemoveCertDetails val:
        :rtype: EventDetails
        """
        return cls('sso_remove_cert_details', val)

    @classmethod
    def sso_remove_login_url_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_remove_login_url_details`` tag with value ``val``.

        :param SsoRemoveLoginUrlDetails val:
        :rtype: EventDetails
        """
        return cls('sso_remove_login_url_details', val)

    @classmethod
    def sso_remove_logout_url_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_remove_logout_url_details`` tag with value ``val``.

        :param SsoRemoveLogoutUrlDetails val:
        :rtype: EventDetails
        """
        return cls('sso_remove_logout_url_details', val)

    @classmethod
    def team_folder_change_status_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_change_status_details`` tag with value ``val``.

        :param TeamFolderChangeStatusDetails val:
        :rtype: EventDetails
        """
        return cls('team_folder_change_status_details', val)

    @classmethod
    def team_folder_create_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_create_details`` tag with value ``val``.

        :param TeamFolderCreateDetails val:
        :rtype: EventDetails
        """
        return cls('team_folder_create_details', val)

    @classmethod
    def team_folder_downgrade_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_downgrade_details`` tag with value ``val``.

        :param TeamFolderDowngradeDetails val:
        :rtype: EventDetails
        """
        return cls('team_folder_downgrade_details', val)

    @classmethod
    def team_folder_permanently_delete_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_permanently_delete_details`` tag with value ``val``.

        :param TeamFolderPermanentlyDeleteDetails val:
        :rtype: EventDetails
        """
        return cls('team_folder_permanently_delete_details', val)

    @classmethod
    def team_folder_rename_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_rename_details`` tag with value ``val``.

        :param TeamFolderRenameDetails val:
        :rtype: EventDetails
        """
        return cls('team_folder_rename_details', val)

    @classmethod
    def team_selective_sync_settings_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_selective_sync_settings_changed_details`` tag with value ``val``.

        :param TeamSelectiveSyncSettingsChangedDetails val:
        :rtype: EventDetails
        """
        return cls('team_selective_sync_settings_changed_details', val)

    @classmethod
    def account_capture_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_change_policy_details`` tag with value ``val``.

        :param AccountCaptureChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('account_capture_change_policy_details', val)

    @classmethod
    def admin_email_reminders_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``admin_email_reminders_changed_details`` tag with value ``val``.

        :param AdminEmailRemindersChangedDetails val:
        :rtype: EventDetails
        """
        return cls('admin_email_reminders_changed_details', val)

    @classmethod
    def allow_download_disabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``allow_download_disabled_details`` tag with value ``val``.

        :param AllowDownloadDisabledDetails val:
        :rtype: EventDetails
        """
        return cls('allow_download_disabled_details', val)

    @classmethod
    def allow_download_enabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``allow_download_enabled_details`` tag with value ``val``.

        :param AllowDownloadEnabledDetails val:
        :rtype: EventDetails
        """
        return cls('allow_download_enabled_details', val)

    @classmethod
    def app_permissions_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``app_permissions_changed_details`` tag with value ``val``.

        :param AppPermissionsChangedDetails val:
        :rtype: EventDetails
        """
        return cls('app_permissions_changed_details', val)

    @classmethod
    def camera_uploads_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``camera_uploads_policy_changed_details`` tag with value ``val``.

        :param CameraUploadsPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('camera_uploads_policy_changed_details', val)

    @classmethod
    def capture_transcript_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``capture_transcript_policy_changed_details`` tag with value ``val``.

        :param CaptureTranscriptPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('capture_transcript_policy_changed_details', val)

    @classmethod
    def classification_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``classification_change_policy_details`` tag with value ``val``.

        :param ClassificationChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('classification_change_policy_details', val)

    @classmethod
    def computer_backup_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``computer_backup_policy_changed_details`` tag with value ``val``.

        :param ComputerBackupPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('computer_backup_policy_changed_details', val)

    @classmethod
    def content_administration_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``content_administration_policy_changed_details`` tag with value
        ``val``.

        :param ContentAdministrationPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('content_administration_policy_changed_details', val)

    @classmethod
    def data_placement_restriction_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``data_placement_restriction_change_policy_details`` tag with value
        ``val``.

        :param DataPlacementRestrictionChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('data_placement_restriction_change_policy_details', val)

    @classmethod
    def data_placement_restriction_satisfy_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``data_placement_restriction_satisfy_policy_details`` tag with value
        ``val``.

        :param DataPlacementRestrictionSatisfyPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('data_placement_restriction_satisfy_policy_details', val)

    @classmethod
    def device_approvals_add_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_add_exception_details`` tag with value ``val``.

        :param DeviceApprovalsAddExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('device_approvals_add_exception_details', val)

    @classmethod
    def device_approvals_change_desktop_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_desktop_policy_details`` tag with value
        ``val``.

        :param DeviceApprovalsChangeDesktopPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('device_approvals_change_desktop_policy_details', val)

    @classmethod
    def device_approvals_change_mobile_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_mobile_policy_details`` tag with value
        ``val``.

        :param DeviceApprovalsChangeMobilePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('device_approvals_change_mobile_policy_details', val)

    @classmethod
    def device_approvals_change_overage_action_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_overage_action_details`` tag with value
        ``val``.

        :param DeviceApprovalsChangeOverageActionDetails val:
        :rtype: EventDetails
        """
        return cls('device_approvals_change_overage_action_details', val)

    @classmethod
    def device_approvals_change_unlink_action_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_unlink_action_details`` tag with value
        ``val``.

        :param DeviceApprovalsChangeUnlinkActionDetails val:
        :rtype: EventDetails
        """
        return cls('device_approvals_change_unlink_action_details', val)

    @classmethod
    def device_approvals_remove_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_remove_exception_details`` tag with value ``val``.

        :param DeviceApprovalsRemoveExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('device_approvals_remove_exception_details', val)

    @classmethod
    def directory_restrictions_add_members_details(cls, val):
        """
        Create an instance of this class set to the
        ``directory_restrictions_add_members_details`` tag with value ``val``.

        :param DirectoryRestrictionsAddMembersDetails val:
        :rtype: EventDetails
        """
        return cls('directory_restrictions_add_members_details', val)

    @classmethod
    def directory_restrictions_remove_members_details(cls, val):
        """
        Create an instance of this class set to the
        ``directory_restrictions_remove_members_details`` tag with value
        ``val``.

        :param DirectoryRestrictionsRemoveMembersDetails val:
        :rtype: EventDetails
        """
        return cls('directory_restrictions_remove_members_details', val)

    @classmethod
    def dropbox_passwords_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``dropbox_passwords_policy_changed_details`` tag with value ``val``.

        :param DropboxPasswordsPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('dropbox_passwords_policy_changed_details', val)

    @classmethod
    def email_ingest_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``email_ingest_policy_changed_details`` tag with value ``val``.

        :param EmailIngestPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('email_ingest_policy_changed_details', val)

    @classmethod
    def emm_add_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``emm_add_exception_details`` tag with value ``val``.

        :param EmmAddExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('emm_add_exception_details', val)

    @classmethod
    def emm_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``emm_change_policy_details`` tag with value ``val``.

        :param EmmChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('emm_change_policy_details', val)

    @classmethod
    def emm_remove_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``emm_remove_exception_details`` tag with value ``val``.

        :param EmmRemoveExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('emm_remove_exception_details', val)

    @classmethod
    def extended_version_history_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``extended_version_history_change_policy_details`` tag with value
        ``val``.

        :param ExtendedVersionHistoryChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('extended_version_history_change_policy_details', val)

    @classmethod
    def external_drive_backup_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``external_drive_backup_policy_changed_details`` tag with value ``val``.

        :param ExternalDriveBackupPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('external_drive_backup_policy_changed_details', val)

    @classmethod
    def file_comments_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_comments_change_policy_details`` tag with value ``val``.

        :param FileCommentsChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('file_comments_change_policy_details', val)

    @classmethod
    def file_locking_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_locking_policy_changed_details`` tag with value ``val``.

        :param FileLockingPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('file_locking_policy_changed_details', val)

    @classmethod
    def file_provider_migration_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_provider_migration_policy_changed_details`` tag with value
        ``val``.

        :param FileProviderMigrationPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('file_provider_migration_policy_changed_details', val)

    @classmethod
    def file_requests_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_requests_change_policy_details`` tag with value ``val``.

        :param FileRequestsChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('file_requests_change_policy_details', val)

    @classmethod
    def file_requests_emails_enabled_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_requests_emails_enabled_details`` tag with value ``val``.

        :param FileRequestsEmailsEnabledDetails val:
        :rtype: EventDetails
        """
        return cls('file_requests_emails_enabled_details', val)

    @classmethod
    def file_requests_emails_restricted_to_team_only_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_requests_emails_restricted_to_team_only_details`` tag with value
        ``val``.

        :param FileRequestsEmailsRestrictedToTeamOnlyDetails val:
        :rtype: EventDetails
        """
        return cls('file_requests_emails_restricted_to_team_only_details', val)

    @classmethod
    def file_transfers_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_policy_changed_details`` tag with value ``val``.

        :param FileTransfersPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('file_transfers_policy_changed_details', val)

    @classmethod
    def folder_link_restriction_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``folder_link_restriction_policy_changed_details`` tag with value
        ``val``.

        :param FolderLinkRestrictionPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('folder_link_restriction_policy_changed_details', val)

    @classmethod
    def google_sso_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``google_sso_change_policy_details`` tag with value ``val``.

        :param GoogleSsoChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('google_sso_change_policy_details', val)

    @classmethod
    def group_user_management_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``group_user_management_change_policy_details`` tag with value ``val``.

        :param GroupUserManagementChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('group_user_management_change_policy_details', val)

    @classmethod
    def integration_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``integration_policy_changed_details`` tag with value ``val``.

        :param IntegrationPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('integration_policy_changed_details', val)

    @classmethod
    def invite_acceptance_email_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``invite_acceptance_email_policy_changed_details`` tag with value
        ``val``.

        :param InviteAcceptanceEmailPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('invite_acceptance_email_policy_changed_details', val)

    @classmethod
    def member_requests_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_requests_change_policy_details`` tag with value ``val``.

        :param MemberRequestsChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('member_requests_change_policy_details', val)

    @classmethod
    def member_send_invite_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_send_invite_policy_changed_details`` tag with value ``val``.

        :param MemberSendInvitePolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('member_send_invite_policy_changed_details', val)

    @classmethod
    def member_space_limits_add_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_add_exception_details`` tag with value ``val``.

        :param MemberSpaceLimitsAddExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_add_exception_details', val)

    @classmethod
    def member_space_limits_change_caps_type_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_caps_type_policy_details`` tag with value
        ``val``.

        :param MemberSpaceLimitsChangeCapsTypePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_change_caps_type_policy_details', val)

    @classmethod
    def member_space_limits_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_policy_details`` tag with value ``val``.

        :param MemberSpaceLimitsChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_change_policy_details', val)

    @classmethod
    def member_space_limits_remove_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_remove_exception_details`` tag with value ``val``.

        :param MemberSpaceLimitsRemoveExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('member_space_limits_remove_exception_details', val)

    @classmethod
    def member_suggestions_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``member_suggestions_change_policy_details`` tag with value ``val``.

        :param MemberSuggestionsChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('member_suggestions_change_policy_details', val)

    @classmethod
    def microsoft_office_addin_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``microsoft_office_addin_change_policy_details`` tag with value ``val``.

        :param MicrosoftOfficeAddinChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('microsoft_office_addin_change_policy_details', val)

    @classmethod
    def network_control_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``network_control_change_policy_details`` tag with value ``val``.

        :param NetworkControlChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('network_control_change_policy_details', val)

    @classmethod
    def paper_change_deployment_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_deployment_policy_details`` tag with value ``val``.

        :param PaperChangeDeploymentPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('paper_change_deployment_policy_details', val)

    @classmethod
    def paper_change_member_link_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_member_link_policy_details`` tag with value ``val``.

        :param PaperChangeMemberLinkPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('paper_change_member_link_policy_details', val)

    @classmethod
    def paper_change_member_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_member_policy_details`` tag with value ``val``.

        :param PaperChangeMemberPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('paper_change_member_policy_details', val)

    @classmethod
    def paper_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_policy_details`` tag with value ``val``.

        :param PaperChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('paper_change_policy_details', val)

    @classmethod
    def paper_default_folder_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_default_folder_policy_changed_details`` tag with value ``val``.

        :param PaperDefaultFolderPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_default_folder_policy_changed_details', val)

    @classmethod
    def paper_desktop_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_desktop_policy_changed_details`` tag with value ``val``.

        :param PaperDesktopPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('paper_desktop_policy_changed_details', val)

    @classmethod
    def paper_enabled_users_group_addition_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_enabled_users_group_addition_details`` tag with value ``val``.

        :param PaperEnabledUsersGroupAdditionDetails val:
        :rtype: EventDetails
        """
        return cls('paper_enabled_users_group_addition_details', val)

    @classmethod
    def paper_enabled_users_group_removal_details(cls, val):
        """
        Create an instance of this class set to the
        ``paper_enabled_users_group_removal_details`` tag with value ``val``.

        :param PaperEnabledUsersGroupRemovalDetails val:
        :rtype: EventDetails
        """
        return cls('paper_enabled_users_group_removal_details', val)

    @classmethod
    def password_strength_requirements_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``password_strength_requirements_change_policy_details`` tag with value
        ``val``.

        :param PasswordStrengthRequirementsChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('password_strength_requirements_change_policy_details', val)

    @classmethod
    def permanent_delete_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``permanent_delete_change_policy_details`` tag with value ``val``.

        :param PermanentDeleteChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('permanent_delete_change_policy_details', val)

    @classmethod
    def reseller_support_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``reseller_support_change_policy_details`` tag with value ``val``.

        :param ResellerSupportChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('reseller_support_change_policy_details', val)

    @classmethod
    def rewind_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``rewind_policy_changed_details`` tag with value ``val``.

        :param RewindPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('rewind_policy_changed_details', val)

    @classmethod
    def send_for_signature_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``send_for_signature_policy_changed_details`` tag with value ``val``.

        :param SendForSignaturePolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('send_for_signature_policy_changed_details', val)

    @classmethod
    def sharing_change_folder_join_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_folder_join_policy_details`` tag with value ``val``.

        :param SharingChangeFolderJoinPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sharing_change_folder_join_policy_details', val)

    @classmethod
    def sharing_change_link_allow_change_expiration_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_allow_change_expiration_policy_details`` tag with
        value ``val``.

        :param SharingChangeLinkAllowChangeExpirationPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sharing_change_link_allow_change_expiration_policy_details', val)

    @classmethod
    def sharing_change_link_default_expiration_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_default_expiration_policy_details`` tag with value
        ``val``.

        :param SharingChangeLinkDefaultExpirationPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sharing_change_link_default_expiration_policy_details', val)

    @classmethod
    def sharing_change_link_enforce_password_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_enforce_password_policy_details`` tag with value
        ``val``.

        :param SharingChangeLinkEnforcePasswordPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sharing_change_link_enforce_password_policy_details', val)

    @classmethod
    def sharing_change_link_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_policy_details`` tag with value ``val``.

        :param SharingChangeLinkPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sharing_change_link_policy_details', val)

    @classmethod
    def sharing_change_member_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_member_policy_details`` tag with value ``val``.

        :param SharingChangeMemberPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sharing_change_member_policy_details', val)

    @classmethod
    def showcase_change_download_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_change_download_policy_details`` tag with value ``val``.

        :param ShowcaseChangeDownloadPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_change_download_policy_details', val)

    @classmethod
    def showcase_change_enabled_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_change_enabled_policy_details`` tag with value ``val``.

        :param ShowcaseChangeEnabledPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_change_enabled_policy_details', val)

    @classmethod
    def showcase_change_external_sharing_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_change_external_sharing_policy_details`` tag with value
        ``val``.

        :param ShowcaseChangeExternalSharingPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('showcase_change_external_sharing_policy_details', val)

    @classmethod
    def smarter_smart_sync_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``smarter_smart_sync_policy_changed_details`` tag with value ``val``.

        :param SmarterSmartSyncPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('smarter_smart_sync_policy_changed_details', val)

    @classmethod
    def smart_sync_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``smart_sync_change_policy_details`` tag with value ``val``.

        :param SmartSyncChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('smart_sync_change_policy_details', val)

    @classmethod
    def smart_sync_not_opt_out_details(cls, val):
        """
        Create an instance of this class set to the
        ``smart_sync_not_opt_out_details`` tag with value ``val``.

        :param SmartSyncNotOptOutDetails val:
        :rtype: EventDetails
        """
        return cls('smart_sync_not_opt_out_details', val)

    @classmethod
    def smart_sync_opt_out_details(cls, val):
        """
        Create an instance of this class set to the
        ``smart_sync_opt_out_details`` tag with value ``val``.

        :param SmartSyncOptOutDetails val:
        :rtype: EventDetails
        """
        return cls('smart_sync_opt_out_details', val)

    @classmethod
    def sso_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``sso_change_policy_details`` tag with value ``val``.

        :param SsoChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('sso_change_policy_details', val)

    @classmethod
    def team_branding_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_branding_policy_changed_details`` tag with value ``val``.

        :param TeamBrandingPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('team_branding_policy_changed_details', val)

    @classmethod
    def team_extensions_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_extensions_policy_changed_details`` tag with value ``val``.

        :param TeamExtensionsPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('team_extensions_policy_changed_details', val)

    @classmethod
    def team_selective_sync_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_selective_sync_policy_changed_details`` tag with value ``val``.

        :param TeamSelectiveSyncPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('team_selective_sync_policy_changed_details', val)

    @classmethod
    def team_sharing_whitelist_subjects_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_sharing_whitelist_subjects_changed_details`` tag with value
        ``val``.

        :param TeamSharingWhitelistSubjectsChangedDetails val:
        :rtype: EventDetails
        """
        return cls('team_sharing_whitelist_subjects_changed_details', val)

    @classmethod
    def tfa_add_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_add_exception_details`` tag with value ``val``.

        :param TfaAddExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_add_exception_details', val)

    @classmethod
    def tfa_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_change_policy_details`` tag with value ``val``.

        :param TfaChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_change_policy_details', val)

    @classmethod
    def tfa_remove_exception_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_remove_exception_details`` tag with value ``val``.

        :param TfaRemoveExceptionDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_remove_exception_details', val)

    @classmethod
    def two_account_change_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``two_account_change_policy_details`` tag with value ``val``.

        :param TwoAccountChangePolicyDetails val:
        :rtype: EventDetails
        """
        return cls('two_account_change_policy_details', val)

    @classmethod
    def viewer_info_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``viewer_info_policy_changed_details`` tag with value ``val``.

        :param ViewerInfoPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('viewer_info_policy_changed_details', val)

    @classmethod
    def watermarking_policy_changed_details(cls, val):
        """
        Create an instance of this class set to the
        ``watermarking_policy_changed_details`` tag with value ``val``.

        :param WatermarkingPolicyChangedDetails val:
        :rtype: EventDetails
        """
        return cls('watermarking_policy_changed_details', val)

    @classmethod
    def web_sessions_change_active_session_limit_details(cls, val):
        """
        Create an instance of this class set to the
        ``web_sessions_change_active_session_limit_details`` tag with value
        ``val``.

        :param WebSessionsChangeActiveSessionLimitDetails val:
        :rtype: EventDetails
        """
        return cls('web_sessions_change_active_session_limit_details', val)

    @classmethod
    def web_sessions_change_fixed_length_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``web_sessions_change_fixed_length_policy_details`` tag with value
        ``val``.

        :param WebSessionsChangeFixedLengthPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('web_sessions_change_fixed_length_policy_details', val)

    @classmethod
    def web_sessions_change_idle_length_policy_details(cls, val):
        """
        Create an instance of this class set to the
        ``web_sessions_change_idle_length_policy_details`` tag with value
        ``val``.

        :param WebSessionsChangeIdleLengthPolicyDetails val:
        :rtype: EventDetails
        """
        return cls('web_sessions_change_idle_length_policy_details', val)

    @classmethod
    def data_residency_migration_request_successful_details(cls, val):
        """
        Create an instance of this class set to the
        ``data_residency_migration_request_successful_details`` tag with value
        ``val``.

        :param DataResidencyMigrationRequestSuccessfulDetails val:
        :rtype: EventDetails
        """
        return cls('data_residency_migration_request_successful_details', val)

    @classmethod
    def data_residency_migration_request_unsuccessful_details(cls, val):
        """
        Create an instance of this class set to the
        ``data_residency_migration_request_unsuccessful_details`` tag with value
        ``val``.

        :param DataResidencyMigrationRequestUnsuccessfulDetails val:
        :rtype: EventDetails
        """
        return cls('data_residency_migration_request_unsuccessful_details', val)

    @classmethod
    def team_merge_from_details(cls, val):
        """
        Create an instance of this class set to the ``team_merge_from_details``
        tag with value ``val``.

        :param TeamMergeFromDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_from_details', val)

    @classmethod
    def team_merge_to_details(cls, val):
        """
        Create an instance of this class set to the ``team_merge_to_details``
        tag with value ``val``.

        :param TeamMergeToDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_to_details', val)

    @classmethod
    def team_profile_add_background_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_add_background_details`` tag with value ``val``.

        :param TeamProfileAddBackgroundDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_add_background_details', val)

    @classmethod
    def team_profile_add_logo_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_add_logo_details`` tag with value ``val``.

        :param TeamProfileAddLogoDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_add_logo_details', val)

    @classmethod
    def team_profile_change_background_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_change_background_details`` tag with value ``val``.

        :param TeamProfileChangeBackgroundDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_change_background_details', val)

    @classmethod
    def team_profile_change_default_language_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_change_default_language_details`` tag with value ``val``.

        :param TeamProfileChangeDefaultLanguageDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_change_default_language_details', val)

    @classmethod
    def team_profile_change_logo_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_change_logo_details`` tag with value ``val``.

        :param TeamProfileChangeLogoDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_change_logo_details', val)

    @classmethod
    def team_profile_change_name_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_change_name_details`` tag with value ``val``.

        :param TeamProfileChangeNameDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_change_name_details', val)

    @classmethod
    def team_profile_remove_background_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_remove_background_details`` tag with value ``val``.

        :param TeamProfileRemoveBackgroundDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_remove_background_details', val)

    @classmethod
    def team_profile_remove_logo_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_remove_logo_details`` tag with value ``val``.

        :param TeamProfileRemoveLogoDetails val:
        :rtype: EventDetails
        """
        return cls('team_profile_remove_logo_details', val)

    @classmethod
    def tfa_add_backup_phone_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_add_backup_phone_details`` tag with value ``val``.

        :param TfaAddBackupPhoneDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_add_backup_phone_details', val)

    @classmethod
    def tfa_add_security_key_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_add_security_key_details`` tag with value ``val``.

        :param TfaAddSecurityKeyDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_add_security_key_details', val)

    @classmethod
    def tfa_change_backup_phone_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_change_backup_phone_details`` tag with value ``val``.

        :param TfaChangeBackupPhoneDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_change_backup_phone_details', val)

    @classmethod
    def tfa_change_status_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_change_status_details`` tag with value ``val``.

        :param TfaChangeStatusDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_change_status_details', val)

    @classmethod
    def tfa_remove_backup_phone_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_remove_backup_phone_details`` tag with value ``val``.

        :param TfaRemoveBackupPhoneDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_remove_backup_phone_details', val)

    @classmethod
    def tfa_remove_security_key_details(cls, val):
        """
        Create an instance of this class set to the
        ``tfa_remove_security_key_details`` tag with value ``val``.

        :param TfaRemoveSecurityKeyDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_remove_security_key_details', val)

    @classmethod
    def tfa_reset_details(cls, val):
        """
        Create an instance of this class set to the ``tfa_reset_details`` tag
        with value ``val``.

        :param TfaResetDetails val:
        :rtype: EventDetails
        """
        return cls('tfa_reset_details', val)

    @classmethod
    def changed_enterprise_admin_role_details(cls, val):
        """
        Create an instance of this class set to the
        ``changed_enterprise_admin_role_details`` tag with value ``val``.

        :param ChangedEnterpriseAdminRoleDetails val:
        :rtype: EventDetails
        """
        return cls('changed_enterprise_admin_role_details', val)

    @classmethod
    def changed_enterprise_connected_team_status_details(cls, val):
        """
        Create an instance of this class set to the
        ``changed_enterprise_connected_team_status_details`` tag with value
        ``val``.

        :param ChangedEnterpriseConnectedTeamStatusDetails val:
        :rtype: EventDetails
        """
        return cls('changed_enterprise_connected_team_status_details', val)

    @classmethod
    def ended_enterprise_admin_session_details(cls, val):
        """
        Create an instance of this class set to the
        ``ended_enterprise_admin_session_details`` tag with value ``val``.

        :param EndedEnterpriseAdminSessionDetails val:
        :rtype: EventDetails
        """
        return cls('ended_enterprise_admin_session_details', val)

    @classmethod
    def ended_enterprise_admin_session_deprecated_details(cls, val):
        """
        Create an instance of this class set to the
        ``ended_enterprise_admin_session_deprecated_details`` tag with value
        ``val``.

        :param EndedEnterpriseAdminSessionDeprecatedDetails val:
        :rtype: EventDetails
        """
        return cls('ended_enterprise_admin_session_deprecated_details', val)

    @classmethod
    def enterprise_settings_locking_details(cls, val):
        """
        Create an instance of this class set to the
        ``enterprise_settings_locking_details`` tag with value ``val``.

        :param EnterpriseSettingsLockingDetails val:
        :rtype: EventDetails
        """
        return cls('enterprise_settings_locking_details', val)

    @classmethod
    def guest_admin_change_status_details(cls, val):
        """
        Create an instance of this class set to the
        ``guest_admin_change_status_details`` tag with value ``val``.

        :param GuestAdminChangeStatusDetails val:
        :rtype: EventDetails
        """
        return cls('guest_admin_change_status_details', val)

    @classmethod
    def started_enterprise_admin_session_details(cls, val):
        """
        Create an instance of this class set to the
        ``started_enterprise_admin_session_details`` tag with value ``val``.

        :param StartedEnterpriseAdminSessionDetails val:
        :rtype: EventDetails
        """
        return cls('started_enterprise_admin_session_details', val)

    @classmethod
    def team_merge_request_accepted_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_accepted_details`` tag with value ``val``.

        :param TeamMergeRequestAcceptedDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_accepted_details', val)

    @classmethod
    def team_merge_request_accepted_shown_to_primary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_accepted_shown_to_primary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestAcceptedShownToPrimaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_accepted_shown_to_primary_team_details', val)

    @classmethod
    def team_merge_request_accepted_shown_to_secondary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_accepted_shown_to_secondary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestAcceptedShownToSecondaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_accepted_shown_to_secondary_team_details', val)

    @classmethod
    def team_merge_request_auto_canceled_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_auto_canceled_details`` tag with value ``val``.

        :param TeamMergeRequestAutoCanceledDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_auto_canceled_details', val)

    @classmethod
    def team_merge_request_canceled_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_canceled_details`` tag with value ``val``.

        :param TeamMergeRequestCanceledDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_canceled_details', val)

    @classmethod
    def team_merge_request_canceled_shown_to_primary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_canceled_shown_to_primary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestCanceledShownToPrimaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_canceled_shown_to_primary_team_details', val)

    @classmethod
    def team_merge_request_canceled_shown_to_secondary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_canceled_shown_to_secondary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestCanceledShownToSecondaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_canceled_shown_to_secondary_team_details', val)

    @classmethod
    def team_merge_request_expired_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_expired_details`` tag with value ``val``.

        :param TeamMergeRequestExpiredDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_expired_details', val)

    @classmethod
    def team_merge_request_expired_shown_to_primary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_expired_shown_to_primary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestExpiredShownToPrimaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_expired_shown_to_primary_team_details', val)

    @classmethod
    def team_merge_request_expired_shown_to_secondary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_expired_shown_to_secondary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestExpiredShownToSecondaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_expired_shown_to_secondary_team_details', val)

    @classmethod
    def team_merge_request_rejected_shown_to_primary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_rejected_shown_to_primary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestRejectedShownToPrimaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_rejected_shown_to_primary_team_details', val)

    @classmethod
    def team_merge_request_rejected_shown_to_secondary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_rejected_shown_to_secondary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestRejectedShownToSecondaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_rejected_shown_to_secondary_team_details', val)

    @classmethod
    def team_merge_request_reminder_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_reminder_details`` tag with value ``val``.

        :param TeamMergeRequestReminderDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_reminder_details', val)

    @classmethod
    def team_merge_request_reminder_shown_to_primary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_reminder_shown_to_primary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestReminderShownToPrimaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_reminder_shown_to_primary_team_details', val)

    @classmethod
    def team_merge_request_reminder_shown_to_secondary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_reminder_shown_to_secondary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestReminderShownToSecondaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_reminder_shown_to_secondary_team_details', val)

    @classmethod
    def team_merge_request_revoked_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_revoked_details`` tag with value ``val``.

        :param TeamMergeRequestRevokedDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_revoked_details', val)

    @classmethod
    def team_merge_request_sent_shown_to_primary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_sent_shown_to_primary_team_details`` tag with value
        ``val``.

        :param TeamMergeRequestSentShownToPrimaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_sent_shown_to_primary_team_details', val)

    @classmethod
    def team_merge_request_sent_shown_to_secondary_team_details(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_sent_shown_to_secondary_team_details`` tag with
        value ``val``.

        :param TeamMergeRequestSentShownToSecondaryTeamDetails val:
        :rtype: EventDetails
        """
        return cls('team_merge_request_sent_shown_to_secondary_team_details', val)

    @classmethod
    def missing_details(cls, val):
        """
        Create an instance of this class set to the ``missing_details`` tag with
        value ``val``.

        :param MissingDetails val:
        :rtype: EventDetails
        """
        return cls('missing_details', val)

    def is_admin_alerting_alert_state_changed_details(self):
        """
        Check if the union tag is ``admin_alerting_alert_state_changed_details``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_alert_state_changed_details'

    def is_admin_alerting_changed_alert_config_details(self):
        """
        Check if the union tag is ``admin_alerting_changed_alert_config_details``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_changed_alert_config_details'

    def is_admin_alerting_triggered_alert_details(self):
        """
        Check if the union tag is ``admin_alerting_triggered_alert_details``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_triggered_alert_details'

    def is_app_blocked_by_permissions_details(self):
        """
        Check if the union tag is ``app_blocked_by_permissions_details``.

        :rtype: bool
        """
        return self._tag == 'app_blocked_by_permissions_details'

    def is_app_link_team_details(self):
        """
        Check if the union tag is ``app_link_team_details``.

        :rtype: bool
        """
        return self._tag == 'app_link_team_details'

    def is_app_link_user_details(self):
        """
        Check if the union tag is ``app_link_user_details``.

        :rtype: bool
        """
        return self._tag == 'app_link_user_details'

    def is_app_unlink_team_details(self):
        """
        Check if the union tag is ``app_unlink_team_details``.

        :rtype: bool
        """
        return self._tag == 'app_unlink_team_details'

    def is_app_unlink_user_details(self):
        """
        Check if the union tag is ``app_unlink_user_details``.

        :rtype: bool
        """
        return self._tag == 'app_unlink_user_details'

    def is_integration_connected_details(self):
        """
        Check if the union tag is ``integration_connected_details``.

        :rtype: bool
        """
        return self._tag == 'integration_connected_details'

    def is_integration_disconnected_details(self):
        """
        Check if the union tag is ``integration_disconnected_details``.

        :rtype: bool
        """
        return self._tag == 'integration_disconnected_details'

    def is_file_add_comment_details(self):
        """
        Check if the union tag is ``file_add_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_add_comment_details'

    def is_file_change_comment_subscription_details(self):
        """
        Check if the union tag is ``file_change_comment_subscription_details``.

        :rtype: bool
        """
        return self._tag == 'file_change_comment_subscription_details'

    def is_file_delete_comment_details(self):
        """
        Check if the union tag is ``file_delete_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_delete_comment_details'

    def is_file_edit_comment_details(self):
        """
        Check if the union tag is ``file_edit_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_edit_comment_details'

    def is_file_like_comment_details(self):
        """
        Check if the union tag is ``file_like_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_like_comment_details'

    def is_file_resolve_comment_details(self):
        """
        Check if the union tag is ``file_resolve_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_resolve_comment_details'

    def is_file_unlike_comment_details(self):
        """
        Check if the union tag is ``file_unlike_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_unlike_comment_details'

    def is_file_unresolve_comment_details(self):
        """
        Check if the union tag is ``file_unresolve_comment_details``.

        :rtype: bool
        """
        return self._tag == 'file_unresolve_comment_details'

    def is_governance_policy_add_folders_details(self):
        """
        Check if the union tag is ``governance_policy_add_folders_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_add_folders_details'

    def is_governance_policy_add_folder_failed_details(self):
        """
        Check if the union tag is ``governance_policy_add_folder_failed_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_add_folder_failed_details'

    def is_governance_policy_content_disposed_details(self):
        """
        Check if the union tag is ``governance_policy_content_disposed_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_content_disposed_details'

    def is_governance_policy_create_details(self):
        """
        Check if the union tag is ``governance_policy_create_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_create_details'

    def is_governance_policy_delete_details(self):
        """
        Check if the union tag is ``governance_policy_delete_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_delete_details'

    def is_governance_policy_edit_details_details(self):
        """
        Check if the union tag is ``governance_policy_edit_details_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_edit_details_details'

    def is_governance_policy_edit_duration_details(self):
        """
        Check if the union tag is ``governance_policy_edit_duration_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_edit_duration_details'

    def is_governance_policy_export_created_details(self):
        """
        Check if the union tag is ``governance_policy_export_created_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_export_created_details'

    def is_governance_policy_export_removed_details(self):
        """
        Check if the union tag is ``governance_policy_export_removed_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_export_removed_details'

    def is_governance_policy_remove_folders_details(self):
        """
        Check if the union tag is ``governance_policy_remove_folders_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_remove_folders_details'

    def is_governance_policy_report_created_details(self):
        """
        Check if the union tag is ``governance_policy_report_created_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_report_created_details'

    def is_governance_policy_zip_part_downloaded_details(self):
        """
        Check if the union tag is ``governance_policy_zip_part_downloaded_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_zip_part_downloaded_details'

    def is_legal_holds_activate_a_hold_details(self):
        """
        Check if the union tag is ``legal_holds_activate_a_hold_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_activate_a_hold_details'

    def is_legal_holds_add_members_details(self):
        """
        Check if the union tag is ``legal_holds_add_members_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_add_members_details'

    def is_legal_holds_change_hold_details_details(self):
        """
        Check if the union tag is ``legal_holds_change_hold_details_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_change_hold_details_details'

    def is_legal_holds_change_hold_name_details(self):
        """
        Check if the union tag is ``legal_holds_change_hold_name_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_change_hold_name_details'

    def is_legal_holds_export_a_hold_details(self):
        """
        Check if the union tag is ``legal_holds_export_a_hold_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_a_hold_details'

    def is_legal_holds_export_cancelled_details(self):
        """
        Check if the union tag is ``legal_holds_export_cancelled_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_cancelled_details'

    def is_legal_holds_export_downloaded_details(self):
        """
        Check if the union tag is ``legal_holds_export_downloaded_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_downloaded_details'

    def is_legal_holds_export_removed_details(self):
        """
        Check if the union tag is ``legal_holds_export_removed_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_removed_details'

    def is_legal_holds_release_a_hold_details(self):
        """
        Check if the union tag is ``legal_holds_release_a_hold_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_release_a_hold_details'

    def is_legal_holds_remove_members_details(self):
        """
        Check if the union tag is ``legal_holds_remove_members_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_remove_members_details'

    def is_legal_holds_report_a_hold_details(self):
        """
        Check if the union tag is ``legal_holds_report_a_hold_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_report_a_hold_details'

    def is_device_change_ip_desktop_details(self):
        """
        Check if the union tag is ``device_change_ip_desktop_details``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_desktop_details'

    def is_device_change_ip_mobile_details(self):
        """
        Check if the union tag is ``device_change_ip_mobile_details``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_mobile_details'

    def is_device_change_ip_web_details(self):
        """
        Check if the union tag is ``device_change_ip_web_details``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_web_details'

    def is_device_delete_on_unlink_fail_details(self):
        """
        Check if the union tag is ``device_delete_on_unlink_fail_details``.

        :rtype: bool
        """
        return self._tag == 'device_delete_on_unlink_fail_details'

    def is_device_delete_on_unlink_success_details(self):
        """
        Check if the union tag is ``device_delete_on_unlink_success_details``.

        :rtype: bool
        """
        return self._tag == 'device_delete_on_unlink_success_details'

    def is_device_link_fail_details(self):
        """
        Check if the union tag is ``device_link_fail_details``.

        :rtype: bool
        """
        return self._tag == 'device_link_fail_details'

    def is_device_link_success_details(self):
        """
        Check if the union tag is ``device_link_success_details``.

        :rtype: bool
        """
        return self._tag == 'device_link_success_details'

    def is_device_management_disabled_details(self):
        """
        Check if the union tag is ``device_management_disabled_details``.

        :rtype: bool
        """
        return self._tag == 'device_management_disabled_details'

    def is_device_management_enabled_details(self):
        """
        Check if the union tag is ``device_management_enabled_details``.

        :rtype: bool
        """
        return self._tag == 'device_management_enabled_details'

    def is_device_sync_backup_status_changed_details(self):
        """
        Check if the union tag is ``device_sync_backup_status_changed_details``.

        :rtype: bool
        """
        return self._tag == 'device_sync_backup_status_changed_details'

    def is_device_unlink_details(self):
        """
        Check if the union tag is ``device_unlink_details``.

        :rtype: bool
        """
        return self._tag == 'device_unlink_details'

    def is_dropbox_passwords_exported_details(self):
        """
        Check if the union tag is ``dropbox_passwords_exported_details``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_exported_details'

    def is_dropbox_passwords_new_device_enrolled_details(self):
        """
        Check if the union tag is ``dropbox_passwords_new_device_enrolled_details``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_new_device_enrolled_details'

    def is_emm_refresh_auth_token_details(self):
        """
        Check if the union tag is ``emm_refresh_auth_token_details``.

        :rtype: bool
        """
        return self._tag == 'emm_refresh_auth_token_details'

    def is_external_drive_backup_eligibility_status_checked_details(self):
        """
        Check if the union tag is ``external_drive_backup_eligibility_status_checked_details``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_eligibility_status_checked_details'

    def is_external_drive_backup_status_changed_details(self):
        """
        Check if the union tag is ``external_drive_backup_status_changed_details``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_status_changed_details'

    def is_account_capture_change_availability_details(self):
        """
        Check if the union tag is ``account_capture_change_availability_details``.

        :rtype: bool
        """
        return self._tag == 'account_capture_change_availability_details'

    def is_account_capture_migrate_account_details(self):
        """
        Check if the union tag is ``account_capture_migrate_account_details``.

        :rtype: bool
        """
        return self._tag == 'account_capture_migrate_account_details'

    def is_account_capture_notification_emails_sent_details(self):
        """
        Check if the union tag is ``account_capture_notification_emails_sent_details``.

        :rtype: bool
        """
        return self._tag == 'account_capture_notification_emails_sent_details'

    def is_account_capture_relinquish_account_details(self):
        """
        Check if the union tag is ``account_capture_relinquish_account_details``.

        :rtype: bool
        """
        return self._tag == 'account_capture_relinquish_account_details'

    def is_disabled_domain_invites_details(self):
        """
        Check if the union tag is ``disabled_domain_invites_details``.

        :rtype: bool
        """
        return self._tag == 'disabled_domain_invites_details'

    def is_domain_invites_approve_request_to_join_team_details(self):
        """
        Check if the union tag is ``domain_invites_approve_request_to_join_team_details``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_approve_request_to_join_team_details'

    def is_domain_invites_decline_request_to_join_team_details(self):
        """
        Check if the union tag is ``domain_invites_decline_request_to_join_team_details``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_decline_request_to_join_team_details'

    def is_domain_invites_email_existing_users_details(self):
        """
        Check if the union tag is ``domain_invites_email_existing_users_details``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_email_existing_users_details'

    def is_domain_invites_request_to_join_team_details(self):
        """
        Check if the union tag is ``domain_invites_request_to_join_team_details``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_request_to_join_team_details'

    def is_domain_invites_set_invite_new_user_pref_to_no_details(self):
        """
        Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_no_details``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_set_invite_new_user_pref_to_no_details'

    def is_domain_invites_set_invite_new_user_pref_to_yes_details(self):
        """
        Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_yes_details``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_set_invite_new_user_pref_to_yes_details'

    def is_domain_verification_add_domain_fail_details(self):
        """
        Check if the union tag is ``domain_verification_add_domain_fail_details``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_add_domain_fail_details'

    def is_domain_verification_add_domain_success_details(self):
        """
        Check if the union tag is ``domain_verification_add_domain_success_details``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_add_domain_success_details'

    def is_domain_verification_remove_domain_details(self):
        """
        Check if the union tag is ``domain_verification_remove_domain_details``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_remove_domain_details'

    def is_enabled_domain_invites_details(self):
        """
        Check if the union tag is ``enabled_domain_invites_details``.

        :rtype: bool
        """
        return self._tag == 'enabled_domain_invites_details'

    def is_apply_naming_convention_details(self):
        """
        Check if the union tag is ``apply_naming_convention_details``.

        :rtype: bool
        """
        return self._tag == 'apply_naming_convention_details'

    def is_create_folder_details(self):
        """
        Check if the union tag is ``create_folder_details``.

        :rtype: bool
        """
        return self._tag == 'create_folder_details'

    def is_file_add_details(self):
        """
        Check if the union tag is ``file_add_details``.

        :rtype: bool
        """
        return self._tag == 'file_add_details'

    def is_file_copy_details(self):
        """
        Check if the union tag is ``file_copy_details``.

        :rtype: bool
        """
        return self._tag == 'file_copy_details'

    def is_file_delete_details(self):
        """
        Check if the union tag is ``file_delete_details``.

        :rtype: bool
        """
        return self._tag == 'file_delete_details'

    def is_file_download_details(self):
        """
        Check if the union tag is ``file_download_details``.

        :rtype: bool
        """
        return self._tag == 'file_download_details'

    def is_file_edit_details(self):
        """
        Check if the union tag is ``file_edit_details``.

        :rtype: bool
        """
        return self._tag == 'file_edit_details'

    def is_file_get_copy_reference_details(self):
        """
        Check if the union tag is ``file_get_copy_reference_details``.

        :rtype: bool
        """
        return self._tag == 'file_get_copy_reference_details'

    def is_file_locking_lock_status_changed_details(self):
        """
        Check if the union tag is ``file_locking_lock_status_changed_details``.

        :rtype: bool
        """
        return self._tag == 'file_locking_lock_status_changed_details'

    def is_file_move_details(self):
        """
        Check if the union tag is ``file_move_details``.

        :rtype: bool
        """
        return self._tag == 'file_move_details'

    def is_file_permanently_delete_details(self):
        """
        Check if the union tag is ``file_permanently_delete_details``.

        :rtype: bool
        """
        return self._tag == 'file_permanently_delete_details'

    def is_file_preview_details(self):
        """
        Check if the union tag is ``file_preview_details``.

        :rtype: bool
        """
        return self._tag == 'file_preview_details'

    def is_file_rename_details(self):
        """
        Check if the union tag is ``file_rename_details``.

        :rtype: bool
        """
        return self._tag == 'file_rename_details'

    def is_file_restore_details(self):
        """
        Check if the union tag is ``file_restore_details``.

        :rtype: bool
        """
        return self._tag == 'file_restore_details'

    def is_file_revert_details(self):
        """
        Check if the union tag is ``file_revert_details``.

        :rtype: bool
        """
        return self._tag == 'file_revert_details'

    def is_file_rollback_changes_details(self):
        """
        Check if the union tag is ``file_rollback_changes_details``.

        :rtype: bool
        """
        return self._tag == 'file_rollback_changes_details'

    def is_file_save_copy_reference_details(self):
        """
        Check if the union tag is ``file_save_copy_reference_details``.

        :rtype: bool
        """
        return self._tag == 'file_save_copy_reference_details'

    def is_folder_overview_description_changed_details(self):
        """
        Check if the union tag is ``folder_overview_description_changed_details``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_description_changed_details'

    def is_folder_overview_item_pinned_details(self):
        """
        Check if the union tag is ``folder_overview_item_pinned_details``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_item_pinned_details'

    def is_folder_overview_item_unpinned_details(self):
        """
        Check if the union tag is ``folder_overview_item_unpinned_details``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_item_unpinned_details'

    def is_object_label_added_details(self):
        """
        Check if the union tag is ``object_label_added_details``.

        :rtype: bool
        """
        return self._tag == 'object_label_added_details'

    def is_object_label_removed_details(self):
        """
        Check if the union tag is ``object_label_removed_details``.

        :rtype: bool
        """
        return self._tag == 'object_label_removed_details'

    def is_object_label_updated_value_details(self):
        """
        Check if the union tag is ``object_label_updated_value_details``.

        :rtype: bool
        """
        return self._tag == 'object_label_updated_value_details'

    def is_organize_folder_with_tidy_details(self):
        """
        Check if the union tag is ``organize_folder_with_tidy_details``.

        :rtype: bool
        """
        return self._tag == 'organize_folder_with_tidy_details'

    def is_rewind_folder_details(self):
        """
        Check if the union tag is ``rewind_folder_details``.

        :rtype: bool
        """
        return self._tag == 'rewind_folder_details'

    def is_undo_naming_convention_details(self):
        """
        Check if the union tag is ``undo_naming_convention_details``.

        :rtype: bool
        """
        return self._tag == 'undo_naming_convention_details'

    def is_undo_organize_folder_with_tidy_details(self):
        """
        Check if the union tag is ``undo_organize_folder_with_tidy_details``.

        :rtype: bool
        """
        return self._tag == 'undo_organize_folder_with_tidy_details'

    def is_user_tags_added_details(self):
        """
        Check if the union tag is ``user_tags_added_details``.

        :rtype: bool
        """
        return self._tag == 'user_tags_added_details'

    def is_user_tags_removed_details(self):
        """
        Check if the union tag is ``user_tags_removed_details``.

        :rtype: bool
        """
        return self._tag == 'user_tags_removed_details'

    def is_email_ingest_receive_file_details(self):
        """
        Check if the union tag is ``email_ingest_receive_file_details``.

        :rtype: bool
        """
        return self._tag == 'email_ingest_receive_file_details'

    def is_file_request_change_details(self):
        """
        Check if the union tag is ``file_request_change_details``.

        :rtype: bool
        """
        return self._tag == 'file_request_change_details'

    def is_file_request_close_details(self):
        """
        Check if the union tag is ``file_request_close_details``.

        :rtype: bool
        """
        return self._tag == 'file_request_close_details'

    def is_file_request_create_details(self):
        """
        Check if the union tag is ``file_request_create_details``.

        :rtype: bool
        """
        return self._tag == 'file_request_create_details'

    def is_file_request_delete_details(self):
        """
        Check if the union tag is ``file_request_delete_details``.

        :rtype: bool
        """
        return self._tag == 'file_request_delete_details'

    def is_file_request_receive_file_details(self):
        """
        Check if the union tag is ``file_request_receive_file_details``.

        :rtype: bool
        """
        return self._tag == 'file_request_receive_file_details'

    def is_group_add_external_id_details(self):
        """
        Check if the union tag is ``group_add_external_id_details``.

        :rtype: bool
        """
        return self._tag == 'group_add_external_id_details'

    def is_group_add_member_details(self):
        """
        Check if the union tag is ``group_add_member_details``.

        :rtype: bool
        """
        return self._tag == 'group_add_member_details'

    def is_group_change_external_id_details(self):
        """
        Check if the union tag is ``group_change_external_id_details``.

        :rtype: bool
        """
        return self._tag == 'group_change_external_id_details'

    def is_group_change_management_type_details(self):
        """
        Check if the union tag is ``group_change_management_type_details``.

        :rtype: bool
        """
        return self._tag == 'group_change_management_type_details'

    def is_group_change_member_role_details(self):
        """
        Check if the union tag is ``group_change_member_role_details``.

        :rtype: bool
        """
        return self._tag == 'group_change_member_role_details'

    def is_group_create_details(self):
        """
        Check if the union tag is ``group_create_details``.

        :rtype: bool
        """
        return self._tag == 'group_create_details'

    def is_group_delete_details(self):
        """
        Check if the union tag is ``group_delete_details``.

        :rtype: bool
        """
        return self._tag == 'group_delete_details'

    def is_group_description_updated_details(self):
        """
        Check if the union tag is ``group_description_updated_details``.

        :rtype: bool
        """
        return self._tag == 'group_description_updated_details'

    def is_group_join_policy_updated_details(self):
        """
        Check if the union tag is ``group_join_policy_updated_details``.

        :rtype: bool
        """
        return self._tag == 'group_join_policy_updated_details'

    def is_group_moved_details(self):
        """
        Check if the union tag is ``group_moved_details``.

        :rtype: bool
        """
        return self._tag == 'group_moved_details'

    def is_group_remove_external_id_details(self):
        """
        Check if the union tag is ``group_remove_external_id_details``.

        :rtype: bool
        """
        return self._tag == 'group_remove_external_id_details'

    def is_group_remove_member_details(self):
        """
        Check if the union tag is ``group_remove_member_details``.

        :rtype: bool
        """
        return self._tag == 'group_remove_member_details'

    def is_group_rename_details(self):
        """
        Check if the union tag is ``group_rename_details``.

        :rtype: bool
        """
        return self._tag == 'group_rename_details'

    def is_account_lock_or_unlocked_details(self):
        """
        Check if the union tag is ``account_lock_or_unlocked_details``.

        :rtype: bool
        """
        return self._tag == 'account_lock_or_unlocked_details'

    def is_emm_error_details(self):
        """
        Check if the union tag is ``emm_error_details``.

        :rtype: bool
        """
        return self._tag == 'emm_error_details'

    def is_guest_admin_signed_in_via_trusted_teams_details(self):
        """
        Check if the union tag is ``guest_admin_signed_in_via_trusted_teams_details``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_signed_in_via_trusted_teams_details'

    def is_guest_admin_signed_out_via_trusted_teams_details(self):
        """
        Check if the union tag is ``guest_admin_signed_out_via_trusted_teams_details``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_signed_out_via_trusted_teams_details'

    def is_login_fail_details(self):
        """
        Check if the union tag is ``login_fail_details``.

        :rtype: bool
        """
        return self._tag == 'login_fail_details'

    def is_login_success_details(self):
        """
        Check if the union tag is ``login_success_details``.

        :rtype: bool
        """
        return self._tag == 'login_success_details'

    def is_logout_details(self):
        """
        Check if the union tag is ``logout_details``.

        :rtype: bool
        """
        return self._tag == 'logout_details'

    def is_reseller_support_session_end_details(self):
        """
        Check if the union tag is ``reseller_support_session_end_details``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_session_end_details'

    def is_reseller_support_session_start_details(self):
        """
        Check if the union tag is ``reseller_support_session_start_details``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_session_start_details'

    def is_sign_in_as_session_end_details(self):
        """
        Check if the union tag is ``sign_in_as_session_end_details``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as_session_end_details'

    def is_sign_in_as_session_start_details(self):
        """
        Check if the union tag is ``sign_in_as_session_start_details``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as_session_start_details'

    def is_sso_error_details(self):
        """
        Check if the union tag is ``sso_error_details``.

        :rtype: bool
        """
        return self._tag == 'sso_error_details'

    def is_create_team_invite_link_details(self):
        """
        Check if the union tag is ``create_team_invite_link_details``.

        :rtype: bool
        """
        return self._tag == 'create_team_invite_link_details'

    def is_delete_team_invite_link_details(self):
        """
        Check if the union tag is ``delete_team_invite_link_details``.

        :rtype: bool
        """
        return self._tag == 'delete_team_invite_link_details'

    def is_member_add_external_id_details(self):
        """
        Check if the union tag is ``member_add_external_id_details``.

        :rtype: bool
        """
        return self._tag == 'member_add_external_id_details'

    def is_member_add_name_details(self):
        """
        Check if the union tag is ``member_add_name_details``.

        :rtype: bool
        """
        return self._tag == 'member_add_name_details'

    def is_member_change_admin_role_details(self):
        """
        Check if the union tag is ``member_change_admin_role_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_admin_role_details'

    def is_member_change_email_details(self):
        """
        Check if the union tag is ``member_change_email_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_email_details'

    def is_member_change_external_id_details(self):
        """
        Check if the union tag is ``member_change_external_id_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_external_id_details'

    def is_member_change_membership_type_details(self):
        """
        Check if the union tag is ``member_change_membership_type_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_membership_type_details'

    def is_member_change_name_details(self):
        """
        Check if the union tag is ``member_change_name_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_name_details'

    def is_member_change_reseller_role_details(self):
        """
        Check if the union tag is ``member_change_reseller_role_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_reseller_role_details'

    def is_member_change_status_details(self):
        """
        Check if the union tag is ``member_change_status_details``.

        :rtype: bool
        """
        return self._tag == 'member_change_status_details'

    def is_member_delete_manual_contacts_details(self):
        """
        Check if the union tag is ``member_delete_manual_contacts_details``.

        :rtype: bool
        """
        return self._tag == 'member_delete_manual_contacts_details'

    def is_member_delete_profile_photo_details(self):
        """
        Check if the union tag is ``member_delete_profile_photo_details``.

        :rtype: bool
        """
        return self._tag == 'member_delete_profile_photo_details'

    def is_member_permanently_delete_account_contents_details(self):
        """
        Check if the union tag is ``member_permanently_delete_account_contents_details``.

        :rtype: bool
        """
        return self._tag == 'member_permanently_delete_account_contents_details'

    def is_member_remove_external_id_details(self):
        """
        Check if the union tag is ``member_remove_external_id_details``.

        :rtype: bool
        """
        return self._tag == 'member_remove_external_id_details'

    def is_member_set_profile_photo_details(self):
        """
        Check if the union tag is ``member_set_profile_photo_details``.

        :rtype: bool
        """
        return self._tag == 'member_set_profile_photo_details'

    def is_member_space_limits_add_custom_quota_details(self):
        """
        Check if the union tag is ``member_space_limits_add_custom_quota_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_add_custom_quota_details'

    def is_member_space_limits_change_custom_quota_details(self):
        """
        Check if the union tag is ``member_space_limits_change_custom_quota_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_custom_quota_details'

    def is_member_space_limits_change_status_details(self):
        """
        Check if the union tag is ``member_space_limits_change_status_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_status_details'

    def is_member_space_limits_remove_custom_quota_details(self):
        """
        Check if the union tag is ``member_space_limits_remove_custom_quota_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_remove_custom_quota_details'

    def is_member_suggest_details(self):
        """
        Check if the union tag is ``member_suggest_details``.

        :rtype: bool
        """
        return self._tag == 'member_suggest_details'

    def is_member_transfer_account_contents_details(self):
        """
        Check if the union tag is ``member_transfer_account_contents_details``.

        :rtype: bool
        """
        return self._tag == 'member_transfer_account_contents_details'

    def is_pending_secondary_email_added_details(self):
        """
        Check if the union tag is ``pending_secondary_email_added_details``.

        :rtype: bool
        """
        return self._tag == 'pending_secondary_email_added_details'

    def is_secondary_email_deleted_details(self):
        """
        Check if the union tag is ``secondary_email_deleted_details``.

        :rtype: bool
        """
        return self._tag == 'secondary_email_deleted_details'

    def is_secondary_email_verified_details(self):
        """
        Check if the union tag is ``secondary_email_verified_details``.

        :rtype: bool
        """
        return self._tag == 'secondary_email_verified_details'

    def is_secondary_mails_policy_changed_details(self):
        """
        Check if the union tag is ``secondary_mails_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'secondary_mails_policy_changed_details'

    def is_binder_add_page_details(self):
        """
        Check if the union tag is ``binder_add_page_details``.

        :rtype: bool
        """
        return self._tag == 'binder_add_page_details'

    def is_binder_add_section_details(self):
        """
        Check if the union tag is ``binder_add_section_details``.

        :rtype: bool
        """
        return self._tag == 'binder_add_section_details'

    def is_binder_remove_page_details(self):
        """
        Check if the union tag is ``binder_remove_page_details``.

        :rtype: bool
        """
        return self._tag == 'binder_remove_page_details'

    def is_binder_remove_section_details(self):
        """
        Check if the union tag is ``binder_remove_section_details``.

        :rtype: bool
        """
        return self._tag == 'binder_remove_section_details'

    def is_binder_rename_page_details(self):
        """
        Check if the union tag is ``binder_rename_page_details``.

        :rtype: bool
        """
        return self._tag == 'binder_rename_page_details'

    def is_binder_rename_section_details(self):
        """
        Check if the union tag is ``binder_rename_section_details``.

        :rtype: bool
        """
        return self._tag == 'binder_rename_section_details'

    def is_binder_reorder_page_details(self):
        """
        Check if the union tag is ``binder_reorder_page_details``.

        :rtype: bool
        """
        return self._tag == 'binder_reorder_page_details'

    def is_binder_reorder_section_details(self):
        """
        Check if the union tag is ``binder_reorder_section_details``.

        :rtype: bool
        """
        return self._tag == 'binder_reorder_section_details'

    def is_paper_content_add_member_details(self):
        """
        Check if the union tag is ``paper_content_add_member_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_add_member_details'

    def is_paper_content_add_to_folder_details(self):
        """
        Check if the union tag is ``paper_content_add_to_folder_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_add_to_folder_details'

    def is_paper_content_archive_details(self):
        """
        Check if the union tag is ``paper_content_archive_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_archive_details'

    def is_paper_content_create_details(self):
        """
        Check if the union tag is ``paper_content_create_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_create_details'

    def is_paper_content_permanently_delete_details(self):
        """
        Check if the union tag is ``paper_content_permanently_delete_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_permanently_delete_details'

    def is_paper_content_remove_from_folder_details(self):
        """
        Check if the union tag is ``paper_content_remove_from_folder_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_remove_from_folder_details'

    def is_paper_content_remove_member_details(self):
        """
        Check if the union tag is ``paper_content_remove_member_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_remove_member_details'

    def is_paper_content_rename_details(self):
        """
        Check if the union tag is ``paper_content_rename_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_rename_details'

    def is_paper_content_restore_details(self):
        """
        Check if the union tag is ``paper_content_restore_details``.

        :rtype: bool
        """
        return self._tag == 'paper_content_restore_details'

    def is_paper_doc_add_comment_details(self):
        """
        Check if the union tag is ``paper_doc_add_comment_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_add_comment_details'

    def is_paper_doc_change_member_role_details(self):
        """
        Check if the union tag is ``paper_doc_change_member_role_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_member_role_details'

    def is_paper_doc_change_sharing_policy_details(self):
        """
        Check if the union tag is ``paper_doc_change_sharing_policy_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_sharing_policy_details'

    def is_paper_doc_change_subscription_details(self):
        """
        Check if the union tag is ``paper_doc_change_subscription_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_subscription_details'

    def is_paper_doc_deleted_details(self):
        """
        Check if the union tag is ``paper_doc_deleted_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_deleted_details'

    def is_paper_doc_delete_comment_details(self):
        """
        Check if the union tag is ``paper_doc_delete_comment_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_delete_comment_details'

    def is_paper_doc_download_details(self):
        """
        Check if the union tag is ``paper_doc_download_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_download_details'

    def is_paper_doc_edit_details(self):
        """
        Check if the union tag is ``paper_doc_edit_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_edit_details'

    def is_paper_doc_edit_comment_details(self):
        """
        Check if the union tag is ``paper_doc_edit_comment_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_edit_comment_details'

    def is_paper_doc_followed_details(self):
        """
        Check if the union tag is ``paper_doc_followed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_followed_details'

    def is_paper_doc_mention_details(self):
        """
        Check if the union tag is ``paper_doc_mention_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_mention_details'

    def is_paper_doc_ownership_changed_details(self):
        """
        Check if the union tag is ``paper_doc_ownership_changed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_ownership_changed_details'

    def is_paper_doc_request_access_details(self):
        """
        Check if the union tag is ``paper_doc_request_access_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_request_access_details'

    def is_paper_doc_resolve_comment_details(self):
        """
        Check if the union tag is ``paper_doc_resolve_comment_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_resolve_comment_details'

    def is_paper_doc_revert_details(self):
        """
        Check if the union tag is ``paper_doc_revert_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_revert_details'

    def is_paper_doc_slack_share_details(self):
        """
        Check if the union tag is ``paper_doc_slack_share_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_slack_share_details'

    def is_paper_doc_team_invite_details(self):
        """
        Check if the union tag is ``paper_doc_team_invite_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_team_invite_details'

    def is_paper_doc_trashed_details(self):
        """
        Check if the union tag is ``paper_doc_trashed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_trashed_details'

    def is_paper_doc_unresolve_comment_details(self):
        """
        Check if the union tag is ``paper_doc_unresolve_comment_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_unresolve_comment_details'

    def is_paper_doc_untrashed_details(self):
        """
        Check if the union tag is ``paper_doc_untrashed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_untrashed_details'

    def is_paper_doc_view_details(self):
        """
        Check if the union tag is ``paper_doc_view_details``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_view_details'

    def is_paper_external_view_allow_details(self):
        """
        Check if the union tag is ``paper_external_view_allow_details``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_allow_details'

    def is_paper_external_view_default_team_details(self):
        """
        Check if the union tag is ``paper_external_view_default_team_details``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_default_team_details'

    def is_paper_external_view_forbid_details(self):
        """
        Check if the union tag is ``paper_external_view_forbid_details``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_forbid_details'

    def is_paper_folder_change_subscription_details(self):
        """
        Check if the union tag is ``paper_folder_change_subscription_details``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_change_subscription_details'

    def is_paper_folder_deleted_details(self):
        """
        Check if the union tag is ``paper_folder_deleted_details``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_deleted_details'

    def is_paper_folder_followed_details(self):
        """
        Check if the union tag is ``paper_folder_followed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_followed_details'

    def is_paper_folder_team_invite_details(self):
        """
        Check if the union tag is ``paper_folder_team_invite_details``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_team_invite_details'

    def is_paper_published_link_change_permission_details(self):
        """
        Check if the union tag is ``paper_published_link_change_permission_details``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_change_permission_details'

    def is_paper_published_link_create_details(self):
        """
        Check if the union tag is ``paper_published_link_create_details``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_create_details'

    def is_paper_published_link_disabled_details(self):
        """
        Check if the union tag is ``paper_published_link_disabled_details``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_disabled_details'

    def is_paper_published_link_view_details(self):
        """
        Check if the union tag is ``paper_published_link_view_details``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_view_details'

    def is_password_change_details(self):
        """
        Check if the union tag is ``password_change_details``.

        :rtype: bool
        """
        return self._tag == 'password_change_details'

    def is_password_reset_details(self):
        """
        Check if the union tag is ``password_reset_details``.

        :rtype: bool
        """
        return self._tag == 'password_reset_details'

    def is_password_reset_all_details(self):
        """
        Check if the union tag is ``password_reset_all_details``.

        :rtype: bool
        """
        return self._tag == 'password_reset_all_details'

    def is_classification_create_report_details(self):
        """
        Check if the union tag is ``classification_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'classification_create_report_details'

    def is_classification_create_report_fail_details(self):
        """
        Check if the union tag is ``classification_create_report_fail_details``.

        :rtype: bool
        """
        return self._tag == 'classification_create_report_fail_details'

    def is_emm_create_exceptions_report_details(self):
        """
        Check if the union tag is ``emm_create_exceptions_report_details``.

        :rtype: bool
        """
        return self._tag == 'emm_create_exceptions_report_details'

    def is_emm_create_usage_report_details(self):
        """
        Check if the union tag is ``emm_create_usage_report_details``.

        :rtype: bool
        """
        return self._tag == 'emm_create_usage_report_details'

    def is_export_members_report_details(self):
        """
        Check if the union tag is ``export_members_report_details``.

        :rtype: bool
        """
        return self._tag == 'export_members_report_details'

    def is_export_members_report_fail_details(self):
        """
        Check if the union tag is ``export_members_report_fail_details``.

        :rtype: bool
        """
        return self._tag == 'export_members_report_fail_details'

    def is_external_sharing_create_report_details(self):
        """
        Check if the union tag is ``external_sharing_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'external_sharing_create_report_details'

    def is_external_sharing_report_failed_details(self):
        """
        Check if the union tag is ``external_sharing_report_failed_details``.

        :rtype: bool
        """
        return self._tag == 'external_sharing_report_failed_details'

    def is_no_expiration_link_gen_create_report_details(self):
        """
        Check if the union tag is ``no_expiration_link_gen_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'no_expiration_link_gen_create_report_details'

    def is_no_expiration_link_gen_report_failed_details(self):
        """
        Check if the union tag is ``no_expiration_link_gen_report_failed_details``.

        :rtype: bool
        """
        return self._tag == 'no_expiration_link_gen_report_failed_details'

    def is_no_password_link_gen_create_report_details(self):
        """
        Check if the union tag is ``no_password_link_gen_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_gen_create_report_details'

    def is_no_password_link_gen_report_failed_details(self):
        """
        Check if the union tag is ``no_password_link_gen_report_failed_details``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_gen_report_failed_details'

    def is_no_password_link_view_create_report_details(self):
        """
        Check if the union tag is ``no_password_link_view_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_view_create_report_details'

    def is_no_password_link_view_report_failed_details(self):
        """
        Check if the union tag is ``no_password_link_view_report_failed_details``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_view_report_failed_details'

    def is_outdated_link_view_create_report_details(self):
        """
        Check if the union tag is ``outdated_link_view_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'outdated_link_view_create_report_details'

    def is_outdated_link_view_report_failed_details(self):
        """
        Check if the union tag is ``outdated_link_view_report_failed_details``.

        :rtype: bool
        """
        return self._tag == 'outdated_link_view_report_failed_details'

    def is_paper_admin_export_start_details(self):
        """
        Check if the union tag is ``paper_admin_export_start_details``.

        :rtype: bool
        """
        return self._tag == 'paper_admin_export_start_details'

    def is_smart_sync_create_admin_privilege_report_details(self):
        """
        Check if the union tag is ``smart_sync_create_admin_privilege_report_details``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_create_admin_privilege_report_details'

    def is_team_activity_create_report_details(self):
        """
        Check if the union tag is ``team_activity_create_report_details``.

        :rtype: bool
        """
        return self._tag == 'team_activity_create_report_details'

    def is_team_activity_create_report_fail_details(self):
        """
        Check if the union tag is ``team_activity_create_report_fail_details``.

        :rtype: bool
        """
        return self._tag == 'team_activity_create_report_fail_details'

    def is_collection_share_details(self):
        """
        Check if the union tag is ``collection_share_details``.

        :rtype: bool
        """
        return self._tag == 'collection_share_details'

    def is_file_transfers_file_add_details(self):
        """
        Check if the union tag is ``file_transfers_file_add_details``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_file_add_details'

    def is_file_transfers_transfer_delete_details(self):
        """
        Check if the union tag is ``file_transfers_transfer_delete_details``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_delete_details'

    def is_file_transfers_transfer_download_details(self):
        """
        Check if the union tag is ``file_transfers_transfer_download_details``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_download_details'

    def is_file_transfers_transfer_send_details(self):
        """
        Check if the union tag is ``file_transfers_transfer_send_details``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_send_details'

    def is_file_transfers_transfer_view_details(self):
        """
        Check if the union tag is ``file_transfers_transfer_view_details``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_view_details'

    def is_note_acl_invite_only_details(self):
        """
        Check if the union tag is ``note_acl_invite_only_details``.

        :rtype: bool
        """
        return self._tag == 'note_acl_invite_only_details'

    def is_note_acl_link_details(self):
        """
        Check if the union tag is ``note_acl_link_details``.

        :rtype: bool
        """
        return self._tag == 'note_acl_link_details'

    def is_note_acl_team_link_details(self):
        """
        Check if the union tag is ``note_acl_team_link_details``.

        :rtype: bool
        """
        return self._tag == 'note_acl_team_link_details'

    def is_note_shared_details(self):
        """
        Check if the union tag is ``note_shared_details``.

        :rtype: bool
        """
        return self._tag == 'note_shared_details'

    def is_note_share_receive_details(self):
        """
        Check if the union tag is ``note_share_receive_details``.

        :rtype: bool
        """
        return self._tag == 'note_share_receive_details'

    def is_open_note_shared_details(self):
        """
        Check if the union tag is ``open_note_shared_details``.

        :rtype: bool
        """
        return self._tag == 'open_note_shared_details'

    def is_sf_add_group_details(self):
        """
        Check if the union tag is ``sf_add_group_details``.

        :rtype: bool
        """
        return self._tag == 'sf_add_group_details'

    def is_sf_allow_non_members_to_view_shared_links_details(self):
        """
        Check if the union tag is ``sf_allow_non_members_to_view_shared_links_details``.

        :rtype: bool
        """
        return self._tag == 'sf_allow_non_members_to_view_shared_links_details'

    def is_sf_external_invite_warn_details(self):
        """
        Check if the union tag is ``sf_external_invite_warn_details``.

        :rtype: bool
        """
        return self._tag == 'sf_external_invite_warn_details'

    def is_sf_fb_invite_details(self):
        """
        Check if the union tag is ``sf_fb_invite_details``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_invite_details'

    def is_sf_fb_invite_change_role_details(self):
        """
        Check if the union tag is ``sf_fb_invite_change_role_details``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_invite_change_role_details'

    def is_sf_fb_uninvite_details(self):
        """
        Check if the union tag is ``sf_fb_uninvite_details``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_uninvite_details'

    def is_sf_invite_group_details(self):
        """
        Check if the union tag is ``sf_invite_group_details``.

        :rtype: bool
        """
        return self._tag == 'sf_invite_group_details'

    def is_sf_team_grant_access_details(self):
        """
        Check if the union tag is ``sf_team_grant_access_details``.

        :rtype: bool
        """
        return self._tag == 'sf_team_grant_access_details'

    def is_sf_team_invite_details(self):
        """
        Check if the union tag is ``sf_team_invite_details``.

        :rtype: bool
        """
        return self._tag == 'sf_team_invite_details'

    def is_sf_team_invite_change_role_details(self):
        """
        Check if the union tag is ``sf_team_invite_change_role_details``.

        :rtype: bool
        """
        return self._tag == 'sf_team_invite_change_role_details'

    def is_sf_team_join_details(self):
        """
        Check if the union tag is ``sf_team_join_details``.

        :rtype: bool
        """
        return self._tag == 'sf_team_join_details'

    def is_sf_team_join_from_oob_link_details(self):
        """
        Check if the union tag is ``sf_team_join_from_oob_link_details``.

        :rtype: bool
        """
        return self._tag == 'sf_team_join_from_oob_link_details'

    def is_sf_team_uninvite_details(self):
        """
        Check if the union tag is ``sf_team_uninvite_details``.

        :rtype: bool
        """
        return self._tag == 'sf_team_uninvite_details'

    def is_shared_content_add_invitees_details(self):
        """
        Check if the union tag is ``shared_content_add_invitees_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_invitees_details'

    def is_shared_content_add_link_expiry_details(self):
        """
        Check if the union tag is ``shared_content_add_link_expiry_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_link_expiry_details'

    def is_shared_content_add_link_password_details(self):
        """
        Check if the union tag is ``shared_content_add_link_password_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_link_password_details'

    def is_shared_content_add_member_details(self):
        """
        Check if the union tag is ``shared_content_add_member_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_member_details'

    def is_shared_content_change_downloads_policy_details(self):
        """
        Check if the union tag is ``shared_content_change_downloads_policy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_downloads_policy_details'

    def is_shared_content_change_invitee_role_details(self):
        """
        Check if the union tag is ``shared_content_change_invitee_role_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_invitee_role_details'

    def is_shared_content_change_link_audience_details(self):
        """
        Check if the union tag is ``shared_content_change_link_audience_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_audience_details'

    def is_shared_content_change_link_expiry_details(self):
        """
        Check if the union tag is ``shared_content_change_link_expiry_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_expiry_details'

    def is_shared_content_change_link_password_details(self):
        """
        Check if the union tag is ``shared_content_change_link_password_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_password_details'

    def is_shared_content_change_member_role_details(self):
        """
        Check if the union tag is ``shared_content_change_member_role_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_member_role_details'

    def is_shared_content_change_viewer_info_policy_details(self):
        """
        Check if the union tag is ``shared_content_change_viewer_info_policy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_viewer_info_policy_details'

    def is_shared_content_claim_invitation_details(self):
        """
        Check if the union tag is ``shared_content_claim_invitation_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_claim_invitation_details'

    def is_shared_content_copy_details(self):
        """
        Check if the union tag is ``shared_content_copy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_copy_details'

    def is_shared_content_download_details(self):
        """
        Check if the union tag is ``shared_content_download_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_download_details'

    def is_shared_content_relinquish_membership_details(self):
        """
        Check if the union tag is ``shared_content_relinquish_membership_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_relinquish_membership_details'

    def is_shared_content_remove_invitees_details(self):
        """
        Check if the union tag is ``shared_content_remove_invitees_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_invitees_details'

    def is_shared_content_remove_link_expiry_details(self):
        """
        Check if the union tag is ``shared_content_remove_link_expiry_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_link_expiry_details'

    def is_shared_content_remove_link_password_details(self):
        """
        Check if the union tag is ``shared_content_remove_link_password_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_link_password_details'

    def is_shared_content_remove_member_details(self):
        """
        Check if the union tag is ``shared_content_remove_member_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_member_details'

    def is_shared_content_request_access_details(self):
        """
        Check if the union tag is ``shared_content_request_access_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_request_access_details'

    def is_shared_content_restore_invitees_details(self):
        """
        Check if the union tag is ``shared_content_restore_invitees_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_restore_invitees_details'

    def is_shared_content_restore_member_details(self):
        """
        Check if the union tag is ``shared_content_restore_member_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_restore_member_details'

    def is_shared_content_unshare_details(self):
        """
        Check if the union tag is ``shared_content_unshare_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_unshare_details'

    def is_shared_content_view_details(self):
        """
        Check if the union tag is ``shared_content_view_details``.

        :rtype: bool
        """
        return self._tag == 'shared_content_view_details'

    def is_shared_folder_change_link_policy_details(self):
        """
        Check if the union tag is ``shared_folder_change_link_policy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_link_policy_details'

    def is_shared_folder_change_members_inheritance_policy_details(self):
        """
        Check if the union tag is ``shared_folder_change_members_inheritance_policy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_inheritance_policy_details'

    def is_shared_folder_change_members_management_policy_details(self):
        """
        Check if the union tag is ``shared_folder_change_members_management_policy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_management_policy_details'

    def is_shared_folder_change_members_policy_details(self):
        """
        Check if the union tag is ``shared_folder_change_members_policy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_policy_details'

    def is_shared_folder_create_details(self):
        """
        Check if the union tag is ``shared_folder_create_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_create_details'

    def is_shared_folder_decline_invitation_details(self):
        """
        Check if the union tag is ``shared_folder_decline_invitation_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_decline_invitation_details'

    def is_shared_folder_mount_details(self):
        """
        Check if the union tag is ``shared_folder_mount_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_mount_details'

    def is_shared_folder_nest_details(self):
        """
        Check if the union tag is ``shared_folder_nest_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_nest_details'

    def is_shared_folder_transfer_ownership_details(self):
        """
        Check if the union tag is ``shared_folder_transfer_ownership_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_transfer_ownership_details'

    def is_shared_folder_unmount_details(self):
        """
        Check if the union tag is ``shared_folder_unmount_details``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_unmount_details'

    def is_shared_link_add_expiry_details(self):
        """
        Check if the union tag is ``shared_link_add_expiry_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_add_expiry_details'

    def is_shared_link_change_expiry_details(self):
        """
        Check if the union tag is ``shared_link_change_expiry_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_change_expiry_details'

    def is_shared_link_change_visibility_details(self):
        """
        Check if the union tag is ``shared_link_change_visibility_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_change_visibility_details'

    def is_shared_link_copy_details(self):
        """
        Check if the union tag is ``shared_link_copy_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_copy_details'

    def is_shared_link_create_details(self):
        """
        Check if the union tag is ``shared_link_create_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_create_details'

    def is_shared_link_disable_details(self):
        """
        Check if the union tag is ``shared_link_disable_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_disable_details'

    def is_shared_link_download_details(self):
        """
        Check if the union tag is ``shared_link_download_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_download_details'

    def is_shared_link_remove_expiry_details(self):
        """
        Check if the union tag is ``shared_link_remove_expiry_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_remove_expiry_details'

    def is_shared_link_settings_add_expiration_details(self):
        """
        Check if the union tag is ``shared_link_settings_add_expiration_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_add_expiration_details'

    def is_shared_link_settings_add_password_details(self):
        """
        Check if the union tag is ``shared_link_settings_add_password_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_add_password_details'

    def is_shared_link_settings_allow_download_disabled_details(self):
        """
        Check if the union tag is ``shared_link_settings_allow_download_disabled_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_allow_download_disabled_details'

    def is_shared_link_settings_allow_download_enabled_details(self):
        """
        Check if the union tag is ``shared_link_settings_allow_download_enabled_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_allow_download_enabled_details'

    def is_shared_link_settings_change_audience_details(self):
        """
        Check if the union tag is ``shared_link_settings_change_audience_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_audience_details'

    def is_shared_link_settings_change_expiration_details(self):
        """
        Check if the union tag is ``shared_link_settings_change_expiration_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_expiration_details'

    def is_shared_link_settings_change_password_details(self):
        """
        Check if the union tag is ``shared_link_settings_change_password_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_password_details'

    def is_shared_link_settings_remove_expiration_details(self):
        """
        Check if the union tag is ``shared_link_settings_remove_expiration_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_remove_expiration_details'

    def is_shared_link_settings_remove_password_details(self):
        """
        Check if the union tag is ``shared_link_settings_remove_password_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_remove_password_details'

    def is_shared_link_share_details(self):
        """
        Check if the union tag is ``shared_link_share_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_share_details'

    def is_shared_link_view_details(self):
        """
        Check if the union tag is ``shared_link_view_details``.

        :rtype: bool
        """
        return self._tag == 'shared_link_view_details'

    def is_shared_note_opened_details(self):
        """
        Check if the union tag is ``shared_note_opened_details``.

        :rtype: bool
        """
        return self._tag == 'shared_note_opened_details'

    def is_shmodel_disable_downloads_details(self):
        """
        Check if the union tag is ``shmodel_disable_downloads_details``.

        :rtype: bool
        """
        return self._tag == 'shmodel_disable_downloads_details'

    def is_shmodel_enable_downloads_details(self):
        """
        Check if the union tag is ``shmodel_enable_downloads_details``.

        :rtype: bool
        """
        return self._tag == 'shmodel_enable_downloads_details'

    def is_shmodel_group_share_details(self):
        """
        Check if the union tag is ``shmodel_group_share_details``.

        :rtype: bool
        """
        return self._tag == 'shmodel_group_share_details'

    def is_showcase_access_granted_details(self):
        """
        Check if the union tag is ``showcase_access_granted_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_access_granted_details'

    def is_showcase_add_member_details(self):
        """
        Check if the union tag is ``showcase_add_member_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_add_member_details'

    def is_showcase_archived_details(self):
        """
        Check if the union tag is ``showcase_archived_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_archived_details'

    def is_showcase_created_details(self):
        """
        Check if the union tag is ``showcase_created_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_created_details'

    def is_showcase_delete_comment_details(self):
        """
        Check if the union tag is ``showcase_delete_comment_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_delete_comment_details'

    def is_showcase_edited_details(self):
        """
        Check if the union tag is ``showcase_edited_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_edited_details'

    def is_showcase_edit_comment_details(self):
        """
        Check if the union tag is ``showcase_edit_comment_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_edit_comment_details'

    def is_showcase_file_added_details(self):
        """
        Check if the union tag is ``showcase_file_added_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_added_details'

    def is_showcase_file_download_details(self):
        """
        Check if the union tag is ``showcase_file_download_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_download_details'

    def is_showcase_file_removed_details(self):
        """
        Check if the union tag is ``showcase_file_removed_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_removed_details'

    def is_showcase_file_view_details(self):
        """
        Check if the union tag is ``showcase_file_view_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_view_details'

    def is_showcase_permanently_deleted_details(self):
        """
        Check if the union tag is ``showcase_permanently_deleted_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_permanently_deleted_details'

    def is_showcase_post_comment_details(self):
        """
        Check if the union tag is ``showcase_post_comment_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_post_comment_details'

    def is_showcase_remove_member_details(self):
        """
        Check if the union tag is ``showcase_remove_member_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_remove_member_details'

    def is_showcase_renamed_details(self):
        """
        Check if the union tag is ``showcase_renamed_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_renamed_details'

    def is_showcase_request_access_details(self):
        """
        Check if the union tag is ``showcase_request_access_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_request_access_details'

    def is_showcase_resolve_comment_details(self):
        """
        Check if the union tag is ``showcase_resolve_comment_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_resolve_comment_details'

    def is_showcase_restored_details(self):
        """
        Check if the union tag is ``showcase_restored_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_restored_details'

    def is_showcase_trashed_details(self):
        """
        Check if the union tag is ``showcase_trashed_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_trashed_details'

    def is_showcase_trashed_deprecated_details(self):
        """
        Check if the union tag is ``showcase_trashed_deprecated_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_trashed_deprecated_details'

    def is_showcase_unresolve_comment_details(self):
        """
        Check if the union tag is ``showcase_unresolve_comment_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_unresolve_comment_details'

    def is_showcase_untrashed_details(self):
        """
        Check if the union tag is ``showcase_untrashed_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_untrashed_details'

    def is_showcase_untrashed_deprecated_details(self):
        """
        Check if the union tag is ``showcase_untrashed_deprecated_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_untrashed_deprecated_details'

    def is_showcase_view_details(self):
        """
        Check if the union tag is ``showcase_view_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_view_details'

    def is_sso_add_cert_details(self):
        """
        Check if the union tag is ``sso_add_cert_details``.

        :rtype: bool
        """
        return self._tag == 'sso_add_cert_details'

    def is_sso_add_login_url_details(self):
        """
        Check if the union tag is ``sso_add_login_url_details``.

        :rtype: bool
        """
        return self._tag == 'sso_add_login_url_details'

    def is_sso_add_logout_url_details(self):
        """
        Check if the union tag is ``sso_add_logout_url_details``.

        :rtype: bool
        """
        return self._tag == 'sso_add_logout_url_details'

    def is_sso_change_cert_details(self):
        """
        Check if the union tag is ``sso_change_cert_details``.

        :rtype: bool
        """
        return self._tag == 'sso_change_cert_details'

    def is_sso_change_login_url_details(self):
        """
        Check if the union tag is ``sso_change_login_url_details``.

        :rtype: bool
        """
        return self._tag == 'sso_change_login_url_details'

    def is_sso_change_logout_url_details(self):
        """
        Check if the union tag is ``sso_change_logout_url_details``.

        :rtype: bool
        """
        return self._tag == 'sso_change_logout_url_details'

    def is_sso_change_saml_identity_mode_details(self):
        """
        Check if the union tag is ``sso_change_saml_identity_mode_details``.

        :rtype: bool
        """
        return self._tag == 'sso_change_saml_identity_mode_details'

    def is_sso_remove_cert_details(self):
        """
        Check if the union tag is ``sso_remove_cert_details``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_cert_details'

    def is_sso_remove_login_url_details(self):
        """
        Check if the union tag is ``sso_remove_login_url_details``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_login_url_details'

    def is_sso_remove_logout_url_details(self):
        """
        Check if the union tag is ``sso_remove_logout_url_details``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_logout_url_details'

    def is_team_folder_change_status_details(self):
        """
        Check if the union tag is ``team_folder_change_status_details``.

        :rtype: bool
        """
        return self._tag == 'team_folder_change_status_details'

    def is_team_folder_create_details(self):
        """
        Check if the union tag is ``team_folder_create_details``.

        :rtype: bool
        """
        return self._tag == 'team_folder_create_details'

    def is_team_folder_downgrade_details(self):
        """
        Check if the union tag is ``team_folder_downgrade_details``.

        :rtype: bool
        """
        return self._tag == 'team_folder_downgrade_details'

    def is_team_folder_permanently_delete_details(self):
        """
        Check if the union tag is ``team_folder_permanently_delete_details``.

        :rtype: bool
        """
        return self._tag == 'team_folder_permanently_delete_details'

    def is_team_folder_rename_details(self):
        """
        Check if the union tag is ``team_folder_rename_details``.

        :rtype: bool
        """
        return self._tag == 'team_folder_rename_details'

    def is_team_selective_sync_settings_changed_details(self):
        """
        Check if the union tag is ``team_selective_sync_settings_changed_details``.

        :rtype: bool
        """
        return self._tag == 'team_selective_sync_settings_changed_details'

    def is_account_capture_change_policy_details(self):
        """
        Check if the union tag is ``account_capture_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'account_capture_change_policy_details'

    def is_admin_email_reminders_changed_details(self):
        """
        Check if the union tag is ``admin_email_reminders_changed_details``.

        :rtype: bool
        """
        return self._tag == 'admin_email_reminders_changed_details'

    def is_allow_download_disabled_details(self):
        """
        Check if the union tag is ``allow_download_disabled_details``.

        :rtype: bool
        """
        return self._tag == 'allow_download_disabled_details'

    def is_allow_download_enabled_details(self):
        """
        Check if the union tag is ``allow_download_enabled_details``.

        :rtype: bool
        """
        return self._tag == 'allow_download_enabled_details'

    def is_app_permissions_changed_details(self):
        """
        Check if the union tag is ``app_permissions_changed_details``.

        :rtype: bool
        """
        return self._tag == 'app_permissions_changed_details'

    def is_camera_uploads_policy_changed_details(self):
        """
        Check if the union tag is ``camera_uploads_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'camera_uploads_policy_changed_details'

    def is_capture_transcript_policy_changed_details(self):
        """
        Check if the union tag is ``capture_transcript_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'capture_transcript_policy_changed_details'

    def is_classification_change_policy_details(self):
        """
        Check if the union tag is ``classification_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'classification_change_policy_details'

    def is_computer_backup_policy_changed_details(self):
        """
        Check if the union tag is ``computer_backup_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'computer_backup_policy_changed_details'

    def is_content_administration_policy_changed_details(self):
        """
        Check if the union tag is ``content_administration_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'content_administration_policy_changed_details'

    def is_data_placement_restriction_change_policy_details(self):
        """
        Check if the union tag is ``data_placement_restriction_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'data_placement_restriction_change_policy_details'

    def is_data_placement_restriction_satisfy_policy_details(self):
        """
        Check if the union tag is ``data_placement_restriction_satisfy_policy_details``.

        :rtype: bool
        """
        return self._tag == 'data_placement_restriction_satisfy_policy_details'

    def is_device_approvals_add_exception_details(self):
        """
        Check if the union tag is ``device_approvals_add_exception_details``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_add_exception_details'

    def is_device_approvals_change_desktop_policy_details(self):
        """
        Check if the union tag is ``device_approvals_change_desktop_policy_details``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_desktop_policy_details'

    def is_device_approvals_change_mobile_policy_details(self):
        """
        Check if the union tag is ``device_approvals_change_mobile_policy_details``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_mobile_policy_details'

    def is_device_approvals_change_overage_action_details(self):
        """
        Check if the union tag is ``device_approvals_change_overage_action_details``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_overage_action_details'

    def is_device_approvals_change_unlink_action_details(self):
        """
        Check if the union tag is ``device_approvals_change_unlink_action_details``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_unlink_action_details'

    def is_device_approvals_remove_exception_details(self):
        """
        Check if the union tag is ``device_approvals_remove_exception_details``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_remove_exception_details'

    def is_directory_restrictions_add_members_details(self):
        """
        Check if the union tag is ``directory_restrictions_add_members_details``.

        :rtype: bool
        """
        return self._tag == 'directory_restrictions_add_members_details'

    def is_directory_restrictions_remove_members_details(self):
        """
        Check if the union tag is ``directory_restrictions_remove_members_details``.

        :rtype: bool
        """
        return self._tag == 'directory_restrictions_remove_members_details'

    def is_dropbox_passwords_policy_changed_details(self):
        """
        Check if the union tag is ``dropbox_passwords_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_policy_changed_details'

    def is_email_ingest_policy_changed_details(self):
        """
        Check if the union tag is ``email_ingest_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'email_ingest_policy_changed_details'

    def is_emm_add_exception_details(self):
        """
        Check if the union tag is ``emm_add_exception_details``.

        :rtype: bool
        """
        return self._tag == 'emm_add_exception_details'

    def is_emm_change_policy_details(self):
        """
        Check if the union tag is ``emm_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'emm_change_policy_details'

    def is_emm_remove_exception_details(self):
        """
        Check if the union tag is ``emm_remove_exception_details``.

        :rtype: bool
        """
        return self._tag == 'emm_remove_exception_details'

    def is_extended_version_history_change_policy_details(self):
        """
        Check if the union tag is ``extended_version_history_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'extended_version_history_change_policy_details'

    def is_external_drive_backup_policy_changed_details(self):
        """
        Check if the union tag is ``external_drive_backup_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_policy_changed_details'

    def is_file_comments_change_policy_details(self):
        """
        Check if the union tag is ``file_comments_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'file_comments_change_policy_details'

    def is_file_locking_policy_changed_details(self):
        """
        Check if the union tag is ``file_locking_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'file_locking_policy_changed_details'

    def is_file_provider_migration_policy_changed_details(self):
        """
        Check if the union tag is ``file_provider_migration_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'file_provider_migration_policy_changed_details'

    def is_file_requests_change_policy_details(self):
        """
        Check if the union tag is ``file_requests_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'file_requests_change_policy_details'

    def is_file_requests_emails_enabled_details(self):
        """
        Check if the union tag is ``file_requests_emails_enabled_details``.

        :rtype: bool
        """
        return self._tag == 'file_requests_emails_enabled_details'

    def is_file_requests_emails_restricted_to_team_only_details(self):
        """
        Check if the union tag is ``file_requests_emails_restricted_to_team_only_details``.

        :rtype: bool
        """
        return self._tag == 'file_requests_emails_restricted_to_team_only_details'

    def is_file_transfers_policy_changed_details(self):
        """
        Check if the union tag is ``file_transfers_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_policy_changed_details'

    def is_folder_link_restriction_policy_changed_details(self):
        """
        Check if the union tag is ``folder_link_restriction_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'folder_link_restriction_policy_changed_details'

    def is_google_sso_change_policy_details(self):
        """
        Check if the union tag is ``google_sso_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'google_sso_change_policy_details'

    def is_group_user_management_change_policy_details(self):
        """
        Check if the union tag is ``group_user_management_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'group_user_management_change_policy_details'

    def is_integration_policy_changed_details(self):
        """
        Check if the union tag is ``integration_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'integration_policy_changed_details'

    def is_invite_acceptance_email_policy_changed_details(self):
        """
        Check if the union tag is ``invite_acceptance_email_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'invite_acceptance_email_policy_changed_details'

    def is_member_requests_change_policy_details(self):
        """
        Check if the union tag is ``member_requests_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'member_requests_change_policy_details'

    def is_member_send_invite_policy_changed_details(self):
        """
        Check if the union tag is ``member_send_invite_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'member_send_invite_policy_changed_details'

    def is_member_space_limits_add_exception_details(self):
        """
        Check if the union tag is ``member_space_limits_add_exception_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_add_exception_details'

    def is_member_space_limits_change_caps_type_policy_details(self):
        """
        Check if the union tag is ``member_space_limits_change_caps_type_policy_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_caps_type_policy_details'

    def is_member_space_limits_change_policy_details(self):
        """
        Check if the union tag is ``member_space_limits_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_policy_details'

    def is_member_space_limits_remove_exception_details(self):
        """
        Check if the union tag is ``member_space_limits_remove_exception_details``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_remove_exception_details'

    def is_member_suggestions_change_policy_details(self):
        """
        Check if the union tag is ``member_suggestions_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'member_suggestions_change_policy_details'

    def is_microsoft_office_addin_change_policy_details(self):
        """
        Check if the union tag is ``microsoft_office_addin_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'microsoft_office_addin_change_policy_details'

    def is_network_control_change_policy_details(self):
        """
        Check if the union tag is ``network_control_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'network_control_change_policy_details'

    def is_paper_change_deployment_policy_details(self):
        """
        Check if the union tag is ``paper_change_deployment_policy_details``.

        :rtype: bool
        """
        return self._tag == 'paper_change_deployment_policy_details'

    def is_paper_change_member_link_policy_details(self):
        """
        Check if the union tag is ``paper_change_member_link_policy_details``.

        :rtype: bool
        """
        return self._tag == 'paper_change_member_link_policy_details'

    def is_paper_change_member_policy_details(self):
        """
        Check if the union tag is ``paper_change_member_policy_details``.

        :rtype: bool
        """
        return self._tag == 'paper_change_member_policy_details'

    def is_paper_change_policy_details(self):
        """
        Check if the union tag is ``paper_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'paper_change_policy_details'

    def is_paper_default_folder_policy_changed_details(self):
        """
        Check if the union tag is ``paper_default_folder_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_default_folder_policy_changed_details'

    def is_paper_desktop_policy_changed_details(self):
        """
        Check if the union tag is ``paper_desktop_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'paper_desktop_policy_changed_details'

    def is_paper_enabled_users_group_addition_details(self):
        """
        Check if the union tag is ``paper_enabled_users_group_addition_details``.

        :rtype: bool
        """
        return self._tag == 'paper_enabled_users_group_addition_details'

    def is_paper_enabled_users_group_removal_details(self):
        """
        Check if the union tag is ``paper_enabled_users_group_removal_details``.

        :rtype: bool
        """
        return self._tag == 'paper_enabled_users_group_removal_details'

    def is_password_strength_requirements_change_policy_details(self):
        """
        Check if the union tag is ``password_strength_requirements_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'password_strength_requirements_change_policy_details'

    def is_permanent_delete_change_policy_details(self):
        """
        Check if the union tag is ``permanent_delete_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'permanent_delete_change_policy_details'

    def is_reseller_support_change_policy_details(self):
        """
        Check if the union tag is ``reseller_support_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_change_policy_details'

    def is_rewind_policy_changed_details(self):
        """
        Check if the union tag is ``rewind_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'rewind_policy_changed_details'

    def is_send_for_signature_policy_changed_details(self):
        """
        Check if the union tag is ``send_for_signature_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'send_for_signature_policy_changed_details'

    def is_sharing_change_folder_join_policy_details(self):
        """
        Check if the union tag is ``sharing_change_folder_join_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_folder_join_policy_details'

    def is_sharing_change_link_allow_change_expiration_policy_details(self):
        """
        Check if the union tag is ``sharing_change_link_allow_change_expiration_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_allow_change_expiration_policy_details'

    def is_sharing_change_link_default_expiration_policy_details(self):
        """
        Check if the union tag is ``sharing_change_link_default_expiration_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_default_expiration_policy_details'

    def is_sharing_change_link_enforce_password_policy_details(self):
        """
        Check if the union tag is ``sharing_change_link_enforce_password_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_enforce_password_policy_details'

    def is_sharing_change_link_policy_details(self):
        """
        Check if the union tag is ``sharing_change_link_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_policy_details'

    def is_sharing_change_member_policy_details(self):
        """
        Check if the union tag is ``sharing_change_member_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_member_policy_details'

    def is_showcase_change_download_policy_details(self):
        """
        Check if the union tag is ``showcase_change_download_policy_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_download_policy_details'

    def is_showcase_change_enabled_policy_details(self):
        """
        Check if the union tag is ``showcase_change_enabled_policy_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_enabled_policy_details'

    def is_showcase_change_external_sharing_policy_details(self):
        """
        Check if the union tag is ``showcase_change_external_sharing_policy_details``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_external_sharing_policy_details'

    def is_smarter_smart_sync_policy_changed_details(self):
        """
        Check if the union tag is ``smarter_smart_sync_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'smarter_smart_sync_policy_changed_details'

    def is_smart_sync_change_policy_details(self):
        """
        Check if the union tag is ``smart_sync_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_change_policy_details'

    def is_smart_sync_not_opt_out_details(self):
        """
        Check if the union tag is ``smart_sync_not_opt_out_details``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_not_opt_out_details'

    def is_smart_sync_opt_out_details(self):
        """
        Check if the union tag is ``smart_sync_opt_out_details``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_opt_out_details'

    def is_sso_change_policy_details(self):
        """
        Check if the union tag is ``sso_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'sso_change_policy_details'

    def is_team_branding_policy_changed_details(self):
        """
        Check if the union tag is ``team_branding_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'team_branding_policy_changed_details'

    def is_team_extensions_policy_changed_details(self):
        """
        Check if the union tag is ``team_extensions_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'team_extensions_policy_changed_details'

    def is_team_selective_sync_policy_changed_details(self):
        """
        Check if the union tag is ``team_selective_sync_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'team_selective_sync_policy_changed_details'

    def is_team_sharing_whitelist_subjects_changed_details(self):
        """
        Check if the union tag is ``team_sharing_whitelist_subjects_changed_details``.

        :rtype: bool
        """
        return self._tag == 'team_sharing_whitelist_subjects_changed_details'

    def is_tfa_add_exception_details(self):
        """
        Check if the union tag is ``tfa_add_exception_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_exception_details'

    def is_tfa_change_policy_details(self):
        """
        Check if the union tag is ``tfa_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_policy_details'

    def is_tfa_remove_exception_details(self):
        """
        Check if the union tag is ``tfa_remove_exception_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_exception_details'

    def is_two_account_change_policy_details(self):
        """
        Check if the union tag is ``two_account_change_policy_details``.

        :rtype: bool
        """
        return self._tag == 'two_account_change_policy_details'

    def is_viewer_info_policy_changed_details(self):
        """
        Check if the union tag is ``viewer_info_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'viewer_info_policy_changed_details'

    def is_watermarking_policy_changed_details(self):
        """
        Check if the union tag is ``watermarking_policy_changed_details``.

        :rtype: bool
        """
        return self._tag == 'watermarking_policy_changed_details'

    def is_web_sessions_change_active_session_limit_details(self):
        """
        Check if the union tag is ``web_sessions_change_active_session_limit_details``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_active_session_limit_details'

    def is_web_sessions_change_fixed_length_policy_details(self):
        """
        Check if the union tag is ``web_sessions_change_fixed_length_policy_details``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_fixed_length_policy_details'

    def is_web_sessions_change_idle_length_policy_details(self):
        """
        Check if the union tag is ``web_sessions_change_idle_length_policy_details``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_idle_length_policy_details'

    def is_data_residency_migration_request_successful_details(self):
        """
        Check if the union tag is ``data_residency_migration_request_successful_details``.

        :rtype: bool
        """
        return self._tag == 'data_residency_migration_request_successful_details'

    def is_data_residency_migration_request_unsuccessful_details(self):
        """
        Check if the union tag is ``data_residency_migration_request_unsuccessful_details``.

        :rtype: bool
        """
        return self._tag == 'data_residency_migration_request_unsuccessful_details'

    def is_team_merge_from_details(self):
        """
        Check if the union tag is ``team_merge_from_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_from_details'

    def is_team_merge_to_details(self):
        """
        Check if the union tag is ``team_merge_to_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_to_details'

    def is_team_profile_add_background_details(self):
        """
        Check if the union tag is ``team_profile_add_background_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_add_background_details'

    def is_team_profile_add_logo_details(self):
        """
        Check if the union tag is ``team_profile_add_logo_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_add_logo_details'

    def is_team_profile_change_background_details(self):
        """
        Check if the union tag is ``team_profile_change_background_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_background_details'

    def is_team_profile_change_default_language_details(self):
        """
        Check if the union tag is ``team_profile_change_default_language_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_default_language_details'

    def is_team_profile_change_logo_details(self):
        """
        Check if the union tag is ``team_profile_change_logo_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_logo_details'

    def is_team_profile_change_name_details(self):
        """
        Check if the union tag is ``team_profile_change_name_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_name_details'

    def is_team_profile_remove_background_details(self):
        """
        Check if the union tag is ``team_profile_remove_background_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_remove_background_details'

    def is_team_profile_remove_logo_details(self):
        """
        Check if the union tag is ``team_profile_remove_logo_details``.

        :rtype: bool
        """
        return self._tag == 'team_profile_remove_logo_details'

    def is_tfa_add_backup_phone_details(self):
        """
        Check if the union tag is ``tfa_add_backup_phone_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_backup_phone_details'

    def is_tfa_add_security_key_details(self):
        """
        Check if the union tag is ``tfa_add_security_key_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_security_key_details'

    def is_tfa_change_backup_phone_details(self):
        """
        Check if the union tag is ``tfa_change_backup_phone_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_backup_phone_details'

    def is_tfa_change_status_details(self):
        """
        Check if the union tag is ``tfa_change_status_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_status_details'

    def is_tfa_remove_backup_phone_details(self):
        """
        Check if the union tag is ``tfa_remove_backup_phone_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_backup_phone_details'

    def is_tfa_remove_security_key_details(self):
        """
        Check if the union tag is ``tfa_remove_security_key_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_security_key_details'

    def is_tfa_reset_details(self):
        """
        Check if the union tag is ``tfa_reset_details``.

        :rtype: bool
        """
        return self._tag == 'tfa_reset_details'

    def is_changed_enterprise_admin_role_details(self):
        """
        Check if the union tag is ``changed_enterprise_admin_role_details``.

        :rtype: bool
        """
        return self._tag == 'changed_enterprise_admin_role_details'

    def is_changed_enterprise_connected_team_status_details(self):
        """
        Check if the union tag is ``changed_enterprise_connected_team_status_details``.

        :rtype: bool
        """
        return self._tag == 'changed_enterprise_connected_team_status_details'

    def is_ended_enterprise_admin_session_details(self):
        """
        Check if the union tag is ``ended_enterprise_admin_session_details``.

        :rtype: bool
        """
        return self._tag == 'ended_enterprise_admin_session_details'

    def is_ended_enterprise_admin_session_deprecated_details(self):
        """
        Check if the union tag is ``ended_enterprise_admin_session_deprecated_details``.

        :rtype: bool
        """
        return self._tag == 'ended_enterprise_admin_session_deprecated_details'

    def is_enterprise_settings_locking_details(self):
        """
        Check if the union tag is ``enterprise_settings_locking_details``.

        :rtype: bool
        """
        return self._tag == 'enterprise_settings_locking_details'

    def is_guest_admin_change_status_details(self):
        """
        Check if the union tag is ``guest_admin_change_status_details``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_change_status_details'

    def is_started_enterprise_admin_session_details(self):
        """
        Check if the union tag is ``started_enterprise_admin_session_details``.

        :rtype: bool
        """
        return self._tag == 'started_enterprise_admin_session_details'

    def is_team_merge_request_accepted_details(self):
        """
        Check if the union tag is ``team_merge_request_accepted_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_details'

    def is_team_merge_request_accepted_shown_to_primary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_accepted_shown_to_primary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_shown_to_primary_team_details'

    def is_team_merge_request_accepted_shown_to_secondary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_accepted_shown_to_secondary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_shown_to_secondary_team_details'

    def is_team_merge_request_auto_canceled_details(self):
        """
        Check if the union tag is ``team_merge_request_auto_canceled_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_auto_canceled_details'

    def is_team_merge_request_canceled_details(self):
        """
        Check if the union tag is ``team_merge_request_canceled_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_details'

    def is_team_merge_request_canceled_shown_to_primary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_canceled_shown_to_primary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_shown_to_primary_team_details'

    def is_team_merge_request_canceled_shown_to_secondary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_canceled_shown_to_secondary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_shown_to_secondary_team_details'

    def is_team_merge_request_expired_details(self):
        """
        Check if the union tag is ``team_merge_request_expired_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_details'

    def is_team_merge_request_expired_shown_to_primary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_expired_shown_to_primary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_shown_to_primary_team_details'

    def is_team_merge_request_expired_shown_to_secondary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_expired_shown_to_secondary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_shown_to_secondary_team_details'

    def is_team_merge_request_rejected_shown_to_primary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_rejected_shown_to_primary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_rejected_shown_to_primary_team_details'

    def is_team_merge_request_rejected_shown_to_secondary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_rejected_shown_to_secondary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_rejected_shown_to_secondary_team_details'

    def is_team_merge_request_reminder_details(self):
        """
        Check if the union tag is ``team_merge_request_reminder_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_details'

    def is_team_merge_request_reminder_shown_to_primary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_reminder_shown_to_primary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_shown_to_primary_team_details'

    def is_team_merge_request_reminder_shown_to_secondary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_reminder_shown_to_secondary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_shown_to_secondary_team_details'

    def is_team_merge_request_revoked_details(self):
        """
        Check if the union tag is ``team_merge_request_revoked_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_revoked_details'

    def is_team_merge_request_sent_shown_to_primary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_sent_shown_to_primary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_sent_shown_to_primary_team_details'

    def is_team_merge_request_sent_shown_to_secondary_team_details(self):
        """
        Check if the union tag is ``team_merge_request_sent_shown_to_secondary_team_details``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_sent_shown_to_secondary_team_details'

    def is_missing_details(self):
        """
        Check if the union tag is ``missing_details``.

        :rtype: bool
        """
        return self._tag == 'missing_details'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_admin_alerting_alert_state_changed_details(self):
        """
        Only call this if :meth:`is_admin_alerting_alert_state_changed_details` is true.

        :rtype: AdminAlertingAlertStateChangedDetails
        """
        if not self.is_admin_alerting_alert_state_changed_details():
            raise AttributeError("tag 'admin_alerting_alert_state_changed_details' not set")
        return self._value

    def get_admin_alerting_changed_alert_config_details(self):
        """
        Only call this if :meth:`is_admin_alerting_changed_alert_config_details` is true.

        :rtype: AdminAlertingChangedAlertConfigDetails
        """
        if not self.is_admin_alerting_changed_alert_config_details():
            raise AttributeError("tag 'admin_alerting_changed_alert_config_details' not set")
        return self._value

    def get_admin_alerting_triggered_alert_details(self):
        """
        Only call this if :meth:`is_admin_alerting_triggered_alert_details` is true.

        :rtype: AdminAlertingTriggeredAlertDetails
        """
        if not self.is_admin_alerting_triggered_alert_details():
            raise AttributeError("tag 'admin_alerting_triggered_alert_details' not set")
        return self._value

    def get_app_blocked_by_permissions_details(self):
        """
        Only call this if :meth:`is_app_blocked_by_permissions_details` is true.

        :rtype: AppBlockedByPermissionsDetails
        """
        if not self.is_app_blocked_by_permissions_details():
            raise AttributeError("tag 'app_blocked_by_permissions_details' not set")
        return self._value

    def get_app_link_team_details(self):
        """
        Only call this if :meth:`is_app_link_team_details` is true.

        :rtype: AppLinkTeamDetails
        """
        if not self.is_app_link_team_details():
            raise AttributeError("tag 'app_link_team_details' not set")
        return self._value

    def get_app_link_user_details(self):
        """
        Only call this if :meth:`is_app_link_user_details` is true.

        :rtype: AppLinkUserDetails
        """
        if not self.is_app_link_user_details():
            raise AttributeError("tag 'app_link_user_details' not set")
        return self._value

    def get_app_unlink_team_details(self):
        """
        Only call this if :meth:`is_app_unlink_team_details` is true.

        :rtype: AppUnlinkTeamDetails
        """
        if not self.is_app_unlink_team_details():
            raise AttributeError("tag 'app_unlink_team_details' not set")
        return self._value

    def get_app_unlink_user_details(self):
        """
        Only call this if :meth:`is_app_unlink_user_details` is true.

        :rtype: AppUnlinkUserDetails
        """
        if not self.is_app_unlink_user_details():
            raise AttributeError("tag 'app_unlink_user_details' not set")
        return self._value

    def get_integration_connected_details(self):
        """
        Only call this if :meth:`is_integration_connected_details` is true.

        :rtype: IntegrationConnectedDetails
        """
        if not self.is_integration_connected_details():
            raise AttributeError("tag 'integration_connected_details' not set")
        return self._value

    def get_integration_disconnected_details(self):
        """
        Only call this if :meth:`is_integration_disconnected_details` is true.

        :rtype: IntegrationDisconnectedDetails
        """
        if not self.is_integration_disconnected_details():
            raise AttributeError("tag 'integration_disconnected_details' not set")
        return self._value

    def get_file_add_comment_details(self):
        """
        Only call this if :meth:`is_file_add_comment_details` is true.

        :rtype: FileAddCommentDetails
        """
        if not self.is_file_add_comment_details():
            raise AttributeError("tag 'file_add_comment_details' not set")
        return self._value

    def get_file_change_comment_subscription_details(self):
        """
        Only call this if :meth:`is_file_change_comment_subscription_details` is true.

        :rtype: FileChangeCommentSubscriptionDetails
        """
        if not self.is_file_change_comment_subscription_details():
            raise AttributeError("tag 'file_change_comment_subscription_details' not set")
        return self._value

    def get_file_delete_comment_details(self):
        """
        Only call this if :meth:`is_file_delete_comment_details` is true.

        :rtype: FileDeleteCommentDetails
        """
        if not self.is_file_delete_comment_details():
            raise AttributeError("tag 'file_delete_comment_details' not set")
        return self._value

    def get_file_edit_comment_details(self):
        """
        Only call this if :meth:`is_file_edit_comment_details` is true.

        :rtype: FileEditCommentDetails
        """
        if not self.is_file_edit_comment_details():
            raise AttributeError("tag 'file_edit_comment_details' not set")
        return self._value

    def get_file_like_comment_details(self):
        """
        Only call this if :meth:`is_file_like_comment_details` is true.

        :rtype: FileLikeCommentDetails
        """
        if not self.is_file_like_comment_details():
            raise AttributeError("tag 'file_like_comment_details' not set")
        return self._value

    def get_file_resolve_comment_details(self):
        """
        Only call this if :meth:`is_file_resolve_comment_details` is true.

        :rtype: FileResolveCommentDetails
        """
        if not self.is_file_resolve_comment_details():
            raise AttributeError("tag 'file_resolve_comment_details' not set")
        return self._value

    def get_file_unlike_comment_details(self):
        """
        Only call this if :meth:`is_file_unlike_comment_details` is true.

        :rtype: FileUnlikeCommentDetails
        """
        if not self.is_file_unlike_comment_details():
            raise AttributeError("tag 'file_unlike_comment_details' not set")
        return self._value

    def get_file_unresolve_comment_details(self):
        """
        Only call this if :meth:`is_file_unresolve_comment_details` is true.

        :rtype: FileUnresolveCommentDetails
        """
        if not self.is_file_unresolve_comment_details():
            raise AttributeError("tag 'file_unresolve_comment_details' not set")
        return self._value

    def get_governance_policy_add_folders_details(self):
        """
        Only call this if :meth:`is_governance_policy_add_folders_details` is true.

        :rtype: GovernancePolicyAddFoldersDetails
        """
        if not self.is_governance_policy_add_folders_details():
            raise AttributeError("tag 'governance_policy_add_folders_details' not set")
        return self._value

    def get_governance_policy_add_folder_failed_details(self):
        """
        Only call this if :meth:`is_governance_policy_add_folder_failed_details` is true.

        :rtype: GovernancePolicyAddFolderFailedDetails
        """
        if not self.is_governance_policy_add_folder_failed_details():
            raise AttributeError("tag 'governance_policy_add_folder_failed_details' not set")
        return self._value

    def get_governance_policy_content_disposed_details(self):
        """
        Only call this if :meth:`is_governance_policy_content_disposed_details` is true.

        :rtype: GovernancePolicyContentDisposedDetails
        """
        if not self.is_governance_policy_content_disposed_details():
            raise AttributeError("tag 'governance_policy_content_disposed_details' not set")
        return self._value

    def get_governance_policy_create_details(self):
        """
        Only call this if :meth:`is_governance_policy_create_details` is true.

        :rtype: GovernancePolicyCreateDetails
        """
        if not self.is_governance_policy_create_details():
            raise AttributeError("tag 'governance_policy_create_details' not set")
        return self._value

    def get_governance_policy_delete_details(self):
        """
        Only call this if :meth:`is_governance_policy_delete_details` is true.

        :rtype: GovernancePolicyDeleteDetails
        """
        if not self.is_governance_policy_delete_details():
            raise AttributeError("tag 'governance_policy_delete_details' not set")
        return self._value

    def get_governance_policy_edit_details_details(self):
        """
        Only call this if :meth:`is_governance_policy_edit_details_details` is true.

        :rtype: GovernancePolicyEditDetailsDetails
        """
        if not self.is_governance_policy_edit_details_details():
            raise AttributeError("tag 'governance_policy_edit_details_details' not set")
        return self._value

    def get_governance_policy_edit_duration_details(self):
        """
        Only call this if :meth:`is_governance_policy_edit_duration_details` is true.

        :rtype: GovernancePolicyEditDurationDetails
        """
        if not self.is_governance_policy_edit_duration_details():
            raise AttributeError("tag 'governance_policy_edit_duration_details' not set")
        return self._value

    def get_governance_policy_export_created_details(self):
        """
        Only call this if :meth:`is_governance_policy_export_created_details` is true.

        :rtype: GovernancePolicyExportCreatedDetails
        """
        if not self.is_governance_policy_export_created_details():
            raise AttributeError("tag 'governance_policy_export_created_details' not set")
        return self._value

    def get_governance_policy_export_removed_details(self):
        """
        Only call this if :meth:`is_governance_policy_export_removed_details` is true.

        :rtype: GovernancePolicyExportRemovedDetails
        """
        if not self.is_governance_policy_export_removed_details():
            raise AttributeError("tag 'governance_policy_export_removed_details' not set")
        return self._value

    def get_governance_policy_remove_folders_details(self):
        """
        Only call this if :meth:`is_governance_policy_remove_folders_details` is true.

        :rtype: GovernancePolicyRemoveFoldersDetails
        """
        if not self.is_governance_policy_remove_folders_details():
            raise AttributeError("tag 'governance_policy_remove_folders_details' not set")
        return self._value

    def get_governance_policy_report_created_details(self):
        """
        Only call this if :meth:`is_governance_policy_report_created_details` is true.

        :rtype: GovernancePolicyReportCreatedDetails
        """
        if not self.is_governance_policy_report_created_details():
            raise AttributeError("tag 'governance_policy_report_created_details' not set")
        return self._value

    def get_governance_policy_zip_part_downloaded_details(self):
        """
        Only call this if :meth:`is_governance_policy_zip_part_downloaded_details` is true.

        :rtype: GovernancePolicyZipPartDownloadedDetails
        """
        if not self.is_governance_policy_zip_part_downloaded_details():
            raise AttributeError("tag 'governance_policy_zip_part_downloaded_details' not set")
        return self._value

    def get_legal_holds_activate_a_hold_details(self):
        """
        Only call this if :meth:`is_legal_holds_activate_a_hold_details` is true.

        :rtype: LegalHoldsActivateAHoldDetails
        """
        if not self.is_legal_holds_activate_a_hold_details():
            raise AttributeError("tag 'legal_holds_activate_a_hold_details' not set")
        return self._value

    def get_legal_holds_add_members_details(self):
        """
        Only call this if :meth:`is_legal_holds_add_members_details` is true.

        :rtype: LegalHoldsAddMembersDetails
        """
        if not self.is_legal_holds_add_members_details():
            raise AttributeError("tag 'legal_holds_add_members_details' not set")
        return self._value

    def get_legal_holds_change_hold_details_details(self):
        """
        Only call this if :meth:`is_legal_holds_change_hold_details_details` is true.

        :rtype: LegalHoldsChangeHoldDetailsDetails
        """
        if not self.is_legal_holds_change_hold_details_details():
            raise AttributeError("tag 'legal_holds_change_hold_details_details' not set")
        return self._value

    def get_legal_holds_change_hold_name_details(self):
        """
        Only call this if :meth:`is_legal_holds_change_hold_name_details` is true.

        :rtype: LegalHoldsChangeHoldNameDetails
        """
        if not self.is_legal_holds_change_hold_name_details():
            raise AttributeError("tag 'legal_holds_change_hold_name_details' not set")
        return self._value

    def get_legal_holds_export_a_hold_details(self):
        """
        Only call this if :meth:`is_legal_holds_export_a_hold_details` is true.

        :rtype: LegalHoldsExportAHoldDetails
        """
        if not self.is_legal_holds_export_a_hold_details():
            raise AttributeError("tag 'legal_holds_export_a_hold_details' not set")
        return self._value

    def get_legal_holds_export_cancelled_details(self):
        """
        Only call this if :meth:`is_legal_holds_export_cancelled_details` is true.

        :rtype: LegalHoldsExportCancelledDetails
        """
        if not self.is_legal_holds_export_cancelled_details():
            raise AttributeError("tag 'legal_holds_export_cancelled_details' not set")
        return self._value

    def get_legal_holds_export_downloaded_details(self):
        """
        Only call this if :meth:`is_legal_holds_export_downloaded_details` is true.

        :rtype: LegalHoldsExportDownloadedDetails
        """
        if not self.is_legal_holds_export_downloaded_details():
            raise AttributeError("tag 'legal_holds_export_downloaded_details' not set")
        return self._value

    def get_legal_holds_export_removed_details(self):
        """
        Only call this if :meth:`is_legal_holds_export_removed_details` is true.

        :rtype: LegalHoldsExportRemovedDetails
        """
        if not self.is_legal_holds_export_removed_details():
            raise AttributeError("tag 'legal_holds_export_removed_details' not set")
        return self._value

    def get_legal_holds_release_a_hold_details(self):
        """
        Only call this if :meth:`is_legal_holds_release_a_hold_details` is true.

        :rtype: LegalHoldsReleaseAHoldDetails
        """
        if not self.is_legal_holds_release_a_hold_details():
            raise AttributeError("tag 'legal_holds_release_a_hold_details' not set")
        return self._value

    def get_legal_holds_remove_members_details(self):
        """
        Only call this if :meth:`is_legal_holds_remove_members_details` is true.

        :rtype: LegalHoldsRemoveMembersDetails
        """
        if not self.is_legal_holds_remove_members_details():
            raise AttributeError("tag 'legal_holds_remove_members_details' not set")
        return self._value

    def get_legal_holds_report_a_hold_details(self):
        """
        Only call this if :meth:`is_legal_holds_report_a_hold_details` is true.

        :rtype: LegalHoldsReportAHoldDetails
        """
        if not self.is_legal_holds_report_a_hold_details():
            raise AttributeError("tag 'legal_holds_report_a_hold_details' not set")
        return self._value

    def get_device_change_ip_desktop_details(self):
        """
        Only call this if :meth:`is_device_change_ip_desktop_details` is true.

        :rtype: DeviceChangeIpDesktopDetails
        """
        if not self.is_device_change_ip_desktop_details():
            raise AttributeError("tag 'device_change_ip_desktop_details' not set")
        return self._value

    def get_device_change_ip_mobile_details(self):
        """
        Only call this if :meth:`is_device_change_ip_mobile_details` is true.

        :rtype: DeviceChangeIpMobileDetails
        """
        if not self.is_device_change_ip_mobile_details():
            raise AttributeError("tag 'device_change_ip_mobile_details' not set")
        return self._value

    def get_device_change_ip_web_details(self):
        """
        Only call this if :meth:`is_device_change_ip_web_details` is true.

        :rtype: DeviceChangeIpWebDetails
        """
        if not self.is_device_change_ip_web_details():
            raise AttributeError("tag 'device_change_ip_web_details' not set")
        return self._value

    def get_device_delete_on_unlink_fail_details(self):
        """
        Only call this if :meth:`is_device_delete_on_unlink_fail_details` is true.

        :rtype: DeviceDeleteOnUnlinkFailDetails
        """
        if not self.is_device_delete_on_unlink_fail_details():
            raise AttributeError("tag 'device_delete_on_unlink_fail_details' not set")
        return self._value

    def get_device_delete_on_unlink_success_details(self):
        """
        Only call this if :meth:`is_device_delete_on_unlink_success_details` is true.

        :rtype: DeviceDeleteOnUnlinkSuccessDetails
        """
        if not self.is_device_delete_on_unlink_success_details():
            raise AttributeError("tag 'device_delete_on_unlink_success_details' not set")
        return self._value

    def get_device_link_fail_details(self):
        """
        Only call this if :meth:`is_device_link_fail_details` is true.

        :rtype: DeviceLinkFailDetails
        """
        if not self.is_device_link_fail_details():
            raise AttributeError("tag 'device_link_fail_details' not set")
        return self._value

    def get_device_link_success_details(self):
        """
        Only call this if :meth:`is_device_link_success_details` is true.

        :rtype: DeviceLinkSuccessDetails
        """
        if not self.is_device_link_success_details():
            raise AttributeError("tag 'device_link_success_details' not set")
        return self._value

    def get_device_management_disabled_details(self):
        """
        Only call this if :meth:`is_device_management_disabled_details` is true.

        :rtype: DeviceManagementDisabledDetails
        """
        if not self.is_device_management_disabled_details():
            raise AttributeError("tag 'device_management_disabled_details' not set")
        return self._value

    def get_device_management_enabled_details(self):
        """
        Only call this if :meth:`is_device_management_enabled_details` is true.

        :rtype: DeviceManagementEnabledDetails
        """
        if not self.is_device_management_enabled_details():
            raise AttributeError("tag 'device_management_enabled_details' not set")
        return self._value

    def get_device_sync_backup_status_changed_details(self):
        """
        Only call this if :meth:`is_device_sync_backup_status_changed_details` is true.

        :rtype: DeviceSyncBackupStatusChangedDetails
        """
        if not self.is_device_sync_backup_status_changed_details():
            raise AttributeError("tag 'device_sync_backup_status_changed_details' not set")
        return self._value

    def get_device_unlink_details(self):
        """
        Only call this if :meth:`is_device_unlink_details` is true.

        :rtype: DeviceUnlinkDetails
        """
        if not self.is_device_unlink_details():
            raise AttributeError("tag 'device_unlink_details' not set")
        return self._value

    def get_dropbox_passwords_exported_details(self):
        """
        Only call this if :meth:`is_dropbox_passwords_exported_details` is true.

        :rtype: DropboxPasswordsExportedDetails
        """
        if not self.is_dropbox_passwords_exported_details():
            raise AttributeError("tag 'dropbox_passwords_exported_details' not set")
        return self._value

    def get_dropbox_passwords_new_device_enrolled_details(self):
        """
        Only call this if :meth:`is_dropbox_passwords_new_device_enrolled_details` is true.

        :rtype: DropboxPasswordsNewDeviceEnrolledDetails
        """
        if not self.is_dropbox_passwords_new_device_enrolled_details():
            raise AttributeError("tag 'dropbox_passwords_new_device_enrolled_details' not set")
        return self._value

    def get_emm_refresh_auth_token_details(self):
        """
        Only call this if :meth:`is_emm_refresh_auth_token_details` is true.

        :rtype: EmmRefreshAuthTokenDetails
        """
        if not self.is_emm_refresh_auth_token_details():
            raise AttributeError("tag 'emm_refresh_auth_token_details' not set")
        return self._value

    def get_external_drive_backup_eligibility_status_checked_details(self):
        """
        Only call this if :meth:`is_external_drive_backup_eligibility_status_checked_details` is true.

        :rtype: ExternalDriveBackupEligibilityStatusCheckedDetails
        """
        if not self.is_external_drive_backup_eligibility_status_checked_details():
            raise AttributeError("tag 'external_drive_backup_eligibility_status_checked_details' not set")
        return self._value

    def get_external_drive_backup_status_changed_details(self):
        """
        Only call this if :meth:`is_external_drive_backup_status_changed_details` is true.

        :rtype: ExternalDriveBackupStatusChangedDetails
        """
        if not self.is_external_drive_backup_status_changed_details():
            raise AttributeError("tag 'external_drive_backup_status_changed_details' not set")
        return self._value

    def get_account_capture_change_availability_details(self):
        """
        Only call this if :meth:`is_account_capture_change_availability_details` is true.

        :rtype: AccountCaptureChangeAvailabilityDetails
        """
        if not self.is_account_capture_change_availability_details():
            raise AttributeError("tag 'account_capture_change_availability_details' not set")
        return self._value

    def get_account_capture_migrate_account_details(self):
        """
        Only call this if :meth:`is_account_capture_migrate_account_details` is true.

        :rtype: AccountCaptureMigrateAccountDetails
        """
        if not self.is_account_capture_migrate_account_details():
            raise AttributeError("tag 'account_capture_migrate_account_details' not set")
        return self._value

    def get_account_capture_notification_emails_sent_details(self):
        """
        Only call this if :meth:`is_account_capture_notification_emails_sent_details` is true.

        :rtype: AccountCaptureNotificationEmailsSentDetails
        """
        if not self.is_account_capture_notification_emails_sent_details():
            raise AttributeError("tag 'account_capture_notification_emails_sent_details' not set")
        return self._value

    def get_account_capture_relinquish_account_details(self):
        """
        Only call this if :meth:`is_account_capture_relinquish_account_details` is true.

        :rtype: AccountCaptureRelinquishAccountDetails
        """
        if not self.is_account_capture_relinquish_account_details():
            raise AttributeError("tag 'account_capture_relinquish_account_details' not set")
        return self._value

    def get_disabled_domain_invites_details(self):
        """
        Only call this if :meth:`is_disabled_domain_invites_details` is true.

        :rtype: DisabledDomainInvitesDetails
        """
        if not self.is_disabled_domain_invites_details():
            raise AttributeError("tag 'disabled_domain_invites_details' not set")
        return self._value

    def get_domain_invites_approve_request_to_join_team_details(self):
        """
        Only call this if :meth:`is_domain_invites_approve_request_to_join_team_details` is true.

        :rtype: DomainInvitesApproveRequestToJoinTeamDetails
        """
        if not self.is_domain_invites_approve_request_to_join_team_details():
            raise AttributeError("tag 'domain_invites_approve_request_to_join_team_details' not set")
        return self._value

    def get_domain_invites_decline_request_to_join_team_details(self):
        """
        Only call this if :meth:`is_domain_invites_decline_request_to_join_team_details` is true.

        :rtype: DomainInvitesDeclineRequestToJoinTeamDetails
        """
        if not self.is_domain_invites_decline_request_to_join_team_details():
            raise AttributeError("tag 'domain_invites_decline_request_to_join_team_details' not set")
        return self._value

    def get_domain_invites_email_existing_users_details(self):
        """
        Only call this if :meth:`is_domain_invites_email_existing_users_details` is true.

        :rtype: DomainInvitesEmailExistingUsersDetails
        """
        if not self.is_domain_invites_email_existing_users_details():
            raise AttributeError("tag 'domain_invites_email_existing_users_details' not set")
        return self._value

    def get_domain_invites_request_to_join_team_details(self):
        """
        Only call this if :meth:`is_domain_invites_request_to_join_team_details` is true.

        :rtype: DomainInvitesRequestToJoinTeamDetails
        """
        if not self.is_domain_invites_request_to_join_team_details():
            raise AttributeError("tag 'domain_invites_request_to_join_team_details' not set")
        return self._value

    def get_domain_invites_set_invite_new_user_pref_to_no_details(self):
        """
        Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_no_details` is true.

        :rtype: DomainInvitesSetInviteNewUserPrefToNoDetails
        """
        if not self.is_domain_invites_set_invite_new_user_pref_to_no_details():
            raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_no_details' not set")
        return self._value

    def get_domain_invites_set_invite_new_user_pref_to_yes_details(self):
        """
        Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_yes_details` is true.

        :rtype: DomainInvitesSetInviteNewUserPrefToYesDetails
        """
        if not self.is_domain_invites_set_invite_new_user_pref_to_yes_details():
            raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_yes_details' not set")
        return self._value

    def get_domain_verification_add_domain_fail_details(self):
        """
        Only call this if :meth:`is_domain_verification_add_domain_fail_details` is true.

        :rtype: DomainVerificationAddDomainFailDetails
        """
        if not self.is_domain_verification_add_domain_fail_details():
            raise AttributeError("tag 'domain_verification_add_domain_fail_details' not set")
        return self._value

    def get_domain_verification_add_domain_success_details(self):
        """
        Only call this if :meth:`is_domain_verification_add_domain_success_details` is true.

        :rtype: DomainVerificationAddDomainSuccessDetails
        """
        if not self.is_domain_verification_add_domain_success_details():
            raise AttributeError("tag 'domain_verification_add_domain_success_details' not set")
        return self._value

    def get_domain_verification_remove_domain_details(self):
        """
        Only call this if :meth:`is_domain_verification_remove_domain_details` is true.

        :rtype: DomainVerificationRemoveDomainDetails
        """
        if not self.is_domain_verification_remove_domain_details():
            raise AttributeError("tag 'domain_verification_remove_domain_details' not set")
        return self._value

    def get_enabled_domain_invites_details(self):
        """
        Only call this if :meth:`is_enabled_domain_invites_details` is true.

        :rtype: EnabledDomainInvitesDetails
        """
        if not self.is_enabled_domain_invites_details():
            raise AttributeError("tag 'enabled_domain_invites_details' not set")
        return self._value

    def get_apply_naming_convention_details(self):
        """
        Only call this if :meth:`is_apply_naming_convention_details` is true.

        :rtype: ApplyNamingConventionDetails
        """
        if not self.is_apply_naming_convention_details():
            raise AttributeError("tag 'apply_naming_convention_details' not set")
        return self._value

    def get_create_folder_details(self):
        """
        Only call this if :meth:`is_create_folder_details` is true.

        :rtype: CreateFolderDetails
        """
        if not self.is_create_folder_details():
            raise AttributeError("tag 'create_folder_details' not set")
        return self._value

    def get_file_add_details(self):
        """
        Only call this if :meth:`is_file_add_details` is true.

        :rtype: FileAddDetails
        """
        if not self.is_file_add_details():
            raise AttributeError("tag 'file_add_details' not set")
        return self._value

    def get_file_copy_details(self):
        """
        Only call this if :meth:`is_file_copy_details` is true.

        :rtype: FileCopyDetails
        """
        if not self.is_file_copy_details():
            raise AttributeError("tag 'file_copy_details' not set")
        return self._value

    def get_file_delete_details(self):
        """
        Only call this if :meth:`is_file_delete_details` is true.

        :rtype: FileDeleteDetails
        """
        if not self.is_file_delete_details():
            raise AttributeError("tag 'file_delete_details' not set")
        return self._value

    def get_file_download_details(self):
        """
        Only call this if :meth:`is_file_download_details` is true.

        :rtype: FileDownloadDetails
        """
        if not self.is_file_download_details():
            raise AttributeError("tag 'file_download_details' not set")
        return self._value

    def get_file_edit_details(self):
        """
        Only call this if :meth:`is_file_edit_details` is true.

        :rtype: FileEditDetails
        """
        if not self.is_file_edit_details():
            raise AttributeError("tag 'file_edit_details' not set")
        return self._value

    def get_file_get_copy_reference_details(self):
        """
        Only call this if :meth:`is_file_get_copy_reference_details` is true.

        :rtype: FileGetCopyReferenceDetails
        """
        if not self.is_file_get_copy_reference_details():
            raise AttributeError("tag 'file_get_copy_reference_details' not set")
        return self._value

    def get_file_locking_lock_status_changed_details(self):
        """
        Only call this if :meth:`is_file_locking_lock_status_changed_details` is true.

        :rtype: FileLockingLockStatusChangedDetails
        """
        if not self.is_file_locking_lock_status_changed_details():
            raise AttributeError("tag 'file_locking_lock_status_changed_details' not set")
        return self._value

    def get_file_move_details(self):
        """
        Only call this if :meth:`is_file_move_details` is true.

        :rtype: FileMoveDetails
        """
        if not self.is_file_move_details():
            raise AttributeError("tag 'file_move_details' not set")
        return self._value

    def get_file_permanently_delete_details(self):
        """
        Only call this if :meth:`is_file_permanently_delete_details` is true.

        :rtype: FilePermanentlyDeleteDetails
        """
        if not self.is_file_permanently_delete_details():
            raise AttributeError("tag 'file_permanently_delete_details' not set")
        return self._value

    def get_file_preview_details(self):
        """
        Only call this if :meth:`is_file_preview_details` is true.

        :rtype: FilePreviewDetails
        """
        if not self.is_file_preview_details():
            raise AttributeError("tag 'file_preview_details' not set")
        return self._value

    def get_file_rename_details(self):
        """
        Only call this if :meth:`is_file_rename_details` is true.

        :rtype: FileRenameDetails
        """
        if not self.is_file_rename_details():
            raise AttributeError("tag 'file_rename_details' not set")
        return self._value

    def get_file_restore_details(self):
        """
        Only call this if :meth:`is_file_restore_details` is true.

        :rtype: FileRestoreDetails
        """
        if not self.is_file_restore_details():
            raise AttributeError("tag 'file_restore_details' not set")
        return self._value

    def get_file_revert_details(self):
        """
        Only call this if :meth:`is_file_revert_details` is true.

        :rtype: FileRevertDetails
        """
        if not self.is_file_revert_details():
            raise AttributeError("tag 'file_revert_details' not set")
        return self._value

    def get_file_rollback_changes_details(self):
        """
        Only call this if :meth:`is_file_rollback_changes_details` is true.

        :rtype: FileRollbackChangesDetails
        """
        if not self.is_file_rollback_changes_details():
            raise AttributeError("tag 'file_rollback_changes_details' not set")
        return self._value

    def get_file_save_copy_reference_details(self):
        """
        Only call this if :meth:`is_file_save_copy_reference_details` is true.

        :rtype: FileSaveCopyReferenceDetails
        """
        if not self.is_file_save_copy_reference_details():
            raise AttributeError("tag 'file_save_copy_reference_details' not set")
        return self._value

    def get_folder_overview_description_changed_details(self):
        """
        Only call this if :meth:`is_folder_overview_description_changed_details` is true.

        :rtype: FolderOverviewDescriptionChangedDetails
        """
        if not self.is_folder_overview_description_changed_details():
            raise AttributeError("tag 'folder_overview_description_changed_details' not set")
        return self._value

    def get_folder_overview_item_pinned_details(self):
        """
        Only call this if :meth:`is_folder_overview_item_pinned_details` is true.

        :rtype: FolderOverviewItemPinnedDetails
        """
        if not self.is_folder_overview_item_pinned_details():
            raise AttributeError("tag 'folder_overview_item_pinned_details' not set")
        return self._value

    def get_folder_overview_item_unpinned_details(self):
        """
        Only call this if :meth:`is_folder_overview_item_unpinned_details` is true.

        :rtype: FolderOverviewItemUnpinnedDetails
        """
        if not self.is_folder_overview_item_unpinned_details():
            raise AttributeError("tag 'folder_overview_item_unpinned_details' not set")
        return self._value

    def get_object_label_added_details(self):
        """
        Only call this if :meth:`is_object_label_added_details` is true.

        :rtype: ObjectLabelAddedDetails
        """
        if not self.is_object_label_added_details():
            raise AttributeError("tag 'object_label_added_details' not set")
        return self._value

    def get_object_label_removed_details(self):
        """
        Only call this if :meth:`is_object_label_removed_details` is true.

        :rtype: ObjectLabelRemovedDetails
        """
        if not self.is_object_label_removed_details():
            raise AttributeError("tag 'object_label_removed_details' not set")
        return self._value

    def get_object_label_updated_value_details(self):
        """
        Only call this if :meth:`is_object_label_updated_value_details` is true.

        :rtype: ObjectLabelUpdatedValueDetails
        """
        if not self.is_object_label_updated_value_details():
            raise AttributeError("tag 'object_label_updated_value_details' not set")
        return self._value

    def get_organize_folder_with_tidy_details(self):
        """
        Only call this if :meth:`is_organize_folder_with_tidy_details` is true.

        :rtype: OrganizeFolderWithTidyDetails
        """
        if not self.is_organize_folder_with_tidy_details():
            raise AttributeError("tag 'organize_folder_with_tidy_details' not set")
        return self._value

    def get_rewind_folder_details(self):
        """
        Only call this if :meth:`is_rewind_folder_details` is true.

        :rtype: RewindFolderDetails
        """
        if not self.is_rewind_folder_details():
            raise AttributeError("tag 'rewind_folder_details' not set")
        return self._value

    def get_undo_naming_convention_details(self):
        """
        Only call this if :meth:`is_undo_naming_convention_details` is true.

        :rtype: UndoNamingConventionDetails
        """
        if not self.is_undo_naming_convention_details():
            raise AttributeError("tag 'undo_naming_convention_details' not set")
        return self._value

    def get_undo_organize_folder_with_tidy_details(self):
        """
        Only call this if :meth:`is_undo_organize_folder_with_tidy_details` is true.

        :rtype: UndoOrganizeFolderWithTidyDetails
        """
        if not self.is_undo_organize_folder_with_tidy_details():
            raise AttributeError("tag 'undo_organize_folder_with_tidy_details' not set")
        return self._value

    def get_user_tags_added_details(self):
        """
        Only call this if :meth:`is_user_tags_added_details` is true.

        :rtype: UserTagsAddedDetails
        """
        if not self.is_user_tags_added_details():
            raise AttributeError("tag 'user_tags_added_details' not set")
        return self._value

    def get_user_tags_removed_details(self):
        """
        Only call this if :meth:`is_user_tags_removed_details` is true.

        :rtype: UserTagsRemovedDetails
        """
        if not self.is_user_tags_removed_details():
            raise AttributeError("tag 'user_tags_removed_details' not set")
        return self._value

    def get_email_ingest_receive_file_details(self):
        """
        Only call this if :meth:`is_email_ingest_receive_file_details` is true.

        :rtype: EmailIngestReceiveFileDetails
        """
        if not self.is_email_ingest_receive_file_details():
            raise AttributeError("tag 'email_ingest_receive_file_details' not set")
        return self._value

    def get_file_request_change_details(self):
        """
        Only call this if :meth:`is_file_request_change_details` is true.

        :rtype: FileRequestChangeDetails
        """
        if not self.is_file_request_change_details():
            raise AttributeError("tag 'file_request_change_details' not set")
        return self._value

    def get_file_request_close_details(self):
        """
        Only call this if :meth:`is_file_request_close_details` is true.

        :rtype: FileRequestCloseDetails
        """
        if not self.is_file_request_close_details():
            raise AttributeError("tag 'file_request_close_details' not set")
        return self._value

    def get_file_request_create_details(self):
        """
        Only call this if :meth:`is_file_request_create_details` is true.

        :rtype: FileRequestCreateDetails
        """
        if not self.is_file_request_create_details():
            raise AttributeError("tag 'file_request_create_details' not set")
        return self._value

    def get_file_request_delete_details(self):
        """
        Only call this if :meth:`is_file_request_delete_details` is true.

        :rtype: FileRequestDeleteDetails
        """
        if not self.is_file_request_delete_details():
            raise AttributeError("tag 'file_request_delete_details' not set")
        return self._value

    def get_file_request_receive_file_details(self):
        """
        Only call this if :meth:`is_file_request_receive_file_details` is true.

        :rtype: FileRequestReceiveFileDetails
        """
        if not self.is_file_request_receive_file_details():
            raise AttributeError("tag 'file_request_receive_file_details' not set")
        return self._value

    def get_group_add_external_id_details(self):
        """
        Only call this if :meth:`is_group_add_external_id_details` is true.

        :rtype: GroupAddExternalIdDetails
        """
        if not self.is_group_add_external_id_details():
            raise AttributeError("tag 'group_add_external_id_details' not set")
        return self._value

    def get_group_add_member_details(self):
        """
        Only call this if :meth:`is_group_add_member_details` is true.

        :rtype: GroupAddMemberDetails
        """
        if not self.is_group_add_member_details():
            raise AttributeError("tag 'group_add_member_details' not set")
        return self._value

    def get_group_change_external_id_details(self):
        """
        Only call this if :meth:`is_group_change_external_id_details` is true.

        :rtype: GroupChangeExternalIdDetails
        """
        if not self.is_group_change_external_id_details():
            raise AttributeError("tag 'group_change_external_id_details' not set")
        return self._value

    def get_group_change_management_type_details(self):
        """
        Only call this if :meth:`is_group_change_management_type_details` is true.

        :rtype: GroupChangeManagementTypeDetails
        """
        if not self.is_group_change_management_type_details():
            raise AttributeError("tag 'group_change_management_type_details' not set")
        return self._value

    def get_group_change_member_role_details(self):
        """
        Only call this if :meth:`is_group_change_member_role_details` is true.

        :rtype: GroupChangeMemberRoleDetails
        """
        if not self.is_group_change_member_role_details():
            raise AttributeError("tag 'group_change_member_role_details' not set")
        return self._value

    def get_group_create_details(self):
        """
        Only call this if :meth:`is_group_create_details` is true.

        :rtype: GroupCreateDetails
        """
        if not self.is_group_create_details():
            raise AttributeError("tag 'group_create_details' not set")
        return self._value

    def get_group_delete_details(self):
        """
        Only call this if :meth:`is_group_delete_details` is true.

        :rtype: GroupDeleteDetails
        """
        if not self.is_group_delete_details():
            raise AttributeError("tag 'group_delete_details' not set")
        return self._value

    def get_group_description_updated_details(self):
        """
        Only call this if :meth:`is_group_description_updated_details` is true.

        :rtype: GroupDescriptionUpdatedDetails
        """
        if not self.is_group_description_updated_details():
            raise AttributeError("tag 'group_description_updated_details' not set")
        return self._value

    def get_group_join_policy_updated_details(self):
        """
        Only call this if :meth:`is_group_join_policy_updated_details` is true.

        :rtype: GroupJoinPolicyUpdatedDetails
        """
        if not self.is_group_join_policy_updated_details():
            raise AttributeError("tag 'group_join_policy_updated_details' not set")
        return self._value

    def get_group_moved_details(self):
        """
        Only call this if :meth:`is_group_moved_details` is true.

        :rtype: GroupMovedDetails
        """
        if not self.is_group_moved_details():
            raise AttributeError("tag 'group_moved_details' not set")
        return self._value

    def get_group_remove_external_id_details(self):
        """
        Only call this if :meth:`is_group_remove_external_id_details` is true.

        :rtype: GroupRemoveExternalIdDetails
        """
        if not self.is_group_remove_external_id_details():
            raise AttributeError("tag 'group_remove_external_id_details' not set")
        return self._value

    def get_group_remove_member_details(self):
        """
        Only call this if :meth:`is_group_remove_member_details` is true.

        :rtype: GroupRemoveMemberDetails
        """
        if not self.is_group_remove_member_details():
            raise AttributeError("tag 'group_remove_member_details' not set")
        return self._value

    def get_group_rename_details(self):
        """
        Only call this if :meth:`is_group_rename_details` is true.

        :rtype: GroupRenameDetails
        """
        if not self.is_group_rename_details():
            raise AttributeError("tag 'group_rename_details' not set")
        return self._value

    def get_account_lock_or_unlocked_details(self):
        """
        Only call this if :meth:`is_account_lock_or_unlocked_details` is true.

        :rtype: AccountLockOrUnlockedDetails
        """
        if not self.is_account_lock_or_unlocked_details():
            raise AttributeError("tag 'account_lock_or_unlocked_details' not set")
        return self._value

    def get_emm_error_details(self):
        """
        Only call this if :meth:`is_emm_error_details` is true.

        :rtype: EmmErrorDetails
        """
        if not self.is_emm_error_details():
            raise AttributeError("tag 'emm_error_details' not set")
        return self._value

    def get_guest_admin_signed_in_via_trusted_teams_details(self):
        """
        Only call this if :meth:`is_guest_admin_signed_in_via_trusted_teams_details` is true.

        :rtype: GuestAdminSignedInViaTrustedTeamsDetails
        """
        if not self.is_guest_admin_signed_in_via_trusted_teams_details():
            raise AttributeError("tag 'guest_admin_signed_in_via_trusted_teams_details' not set")
        return self._value

    def get_guest_admin_signed_out_via_trusted_teams_details(self):
        """
        Only call this if :meth:`is_guest_admin_signed_out_via_trusted_teams_details` is true.

        :rtype: GuestAdminSignedOutViaTrustedTeamsDetails
        """
        if not self.is_guest_admin_signed_out_via_trusted_teams_details():
            raise AttributeError("tag 'guest_admin_signed_out_via_trusted_teams_details' not set")
        return self._value

    def get_login_fail_details(self):
        """
        Only call this if :meth:`is_login_fail_details` is true.

        :rtype: LoginFailDetails
        """
        if not self.is_login_fail_details():
            raise AttributeError("tag 'login_fail_details' not set")
        return self._value

    def get_login_success_details(self):
        """
        Only call this if :meth:`is_login_success_details` is true.

        :rtype: LoginSuccessDetails
        """
        if not self.is_login_success_details():
            raise AttributeError("tag 'login_success_details' not set")
        return self._value

    def get_logout_details(self):
        """
        Only call this if :meth:`is_logout_details` is true.

        :rtype: LogoutDetails
        """
        if not self.is_logout_details():
            raise AttributeError("tag 'logout_details' not set")
        return self._value

    def get_reseller_support_session_end_details(self):
        """
        Only call this if :meth:`is_reseller_support_session_end_details` is true.

        :rtype: ResellerSupportSessionEndDetails
        """
        if not self.is_reseller_support_session_end_details():
            raise AttributeError("tag 'reseller_support_session_end_details' not set")
        return self._value

    def get_reseller_support_session_start_details(self):
        """
        Only call this if :meth:`is_reseller_support_session_start_details` is true.

        :rtype: ResellerSupportSessionStartDetails
        """
        if not self.is_reseller_support_session_start_details():
            raise AttributeError("tag 'reseller_support_session_start_details' not set")
        return self._value

    def get_sign_in_as_session_end_details(self):
        """
        Only call this if :meth:`is_sign_in_as_session_end_details` is true.

        :rtype: SignInAsSessionEndDetails
        """
        if not self.is_sign_in_as_session_end_details():
            raise AttributeError("tag 'sign_in_as_session_end_details' not set")
        return self._value

    def get_sign_in_as_session_start_details(self):
        """
        Only call this if :meth:`is_sign_in_as_session_start_details` is true.

        :rtype: SignInAsSessionStartDetails
        """
        if not self.is_sign_in_as_session_start_details():
            raise AttributeError("tag 'sign_in_as_session_start_details' not set")
        return self._value

    def get_sso_error_details(self):
        """
        Only call this if :meth:`is_sso_error_details` is true.

        :rtype: SsoErrorDetails
        """
        if not self.is_sso_error_details():
            raise AttributeError("tag 'sso_error_details' not set")
        return self._value

    def get_create_team_invite_link_details(self):
        """
        Only call this if :meth:`is_create_team_invite_link_details` is true.

        :rtype: CreateTeamInviteLinkDetails
        """
        if not self.is_create_team_invite_link_details():
            raise AttributeError("tag 'create_team_invite_link_details' not set")
        return self._value

    def get_delete_team_invite_link_details(self):
        """
        Only call this if :meth:`is_delete_team_invite_link_details` is true.

        :rtype: DeleteTeamInviteLinkDetails
        """
        if not self.is_delete_team_invite_link_details():
            raise AttributeError("tag 'delete_team_invite_link_details' not set")
        return self._value

    def get_member_add_external_id_details(self):
        """
        Only call this if :meth:`is_member_add_external_id_details` is true.

        :rtype: MemberAddExternalIdDetails
        """
        if not self.is_member_add_external_id_details():
            raise AttributeError("tag 'member_add_external_id_details' not set")
        return self._value

    def get_member_add_name_details(self):
        """
        Only call this if :meth:`is_member_add_name_details` is true.

        :rtype: MemberAddNameDetails
        """
        if not self.is_member_add_name_details():
            raise AttributeError("tag 'member_add_name_details' not set")
        return self._value

    def get_member_change_admin_role_details(self):
        """
        Only call this if :meth:`is_member_change_admin_role_details` is true.

        :rtype: MemberChangeAdminRoleDetails
        """
        if not self.is_member_change_admin_role_details():
            raise AttributeError("tag 'member_change_admin_role_details' not set")
        return self._value

    def get_member_change_email_details(self):
        """
        Only call this if :meth:`is_member_change_email_details` is true.

        :rtype: MemberChangeEmailDetails
        """
        if not self.is_member_change_email_details():
            raise AttributeError("tag 'member_change_email_details' not set")
        return self._value

    def get_member_change_external_id_details(self):
        """
        Only call this if :meth:`is_member_change_external_id_details` is true.

        :rtype: MemberChangeExternalIdDetails
        """
        if not self.is_member_change_external_id_details():
            raise AttributeError("tag 'member_change_external_id_details' not set")
        return self._value

    def get_member_change_membership_type_details(self):
        """
        Only call this if :meth:`is_member_change_membership_type_details` is true.

        :rtype: MemberChangeMembershipTypeDetails
        """
        if not self.is_member_change_membership_type_details():
            raise AttributeError("tag 'member_change_membership_type_details' not set")
        return self._value

    def get_member_change_name_details(self):
        """
        Only call this if :meth:`is_member_change_name_details` is true.

        :rtype: MemberChangeNameDetails
        """
        if not self.is_member_change_name_details():
            raise AttributeError("tag 'member_change_name_details' not set")
        return self._value

    def get_member_change_reseller_role_details(self):
        """
        Only call this if :meth:`is_member_change_reseller_role_details` is true.

        :rtype: MemberChangeResellerRoleDetails
        """
        if not self.is_member_change_reseller_role_details():
            raise AttributeError("tag 'member_change_reseller_role_details' not set")
        return self._value

    def get_member_change_status_details(self):
        """
        Only call this if :meth:`is_member_change_status_details` is true.

        :rtype: MemberChangeStatusDetails
        """
        if not self.is_member_change_status_details():
            raise AttributeError("tag 'member_change_status_details' not set")
        return self._value

    def get_member_delete_manual_contacts_details(self):
        """
        Only call this if :meth:`is_member_delete_manual_contacts_details` is true.

        :rtype: MemberDeleteManualContactsDetails
        """
        if not self.is_member_delete_manual_contacts_details():
            raise AttributeError("tag 'member_delete_manual_contacts_details' not set")
        return self._value

    def get_member_delete_profile_photo_details(self):
        """
        Only call this if :meth:`is_member_delete_profile_photo_details` is true.

        :rtype: MemberDeleteProfilePhotoDetails
        """
        if not self.is_member_delete_profile_photo_details():
            raise AttributeError("tag 'member_delete_profile_photo_details' not set")
        return self._value

    def get_member_permanently_delete_account_contents_details(self):
        """
        Only call this if :meth:`is_member_permanently_delete_account_contents_details` is true.

        :rtype: MemberPermanentlyDeleteAccountContentsDetails
        """
        if not self.is_member_permanently_delete_account_contents_details():
            raise AttributeError("tag 'member_permanently_delete_account_contents_details' not set")
        return self._value

    def get_member_remove_external_id_details(self):
        """
        Only call this if :meth:`is_member_remove_external_id_details` is true.

        :rtype: MemberRemoveExternalIdDetails
        """
        if not self.is_member_remove_external_id_details():
            raise AttributeError("tag 'member_remove_external_id_details' not set")
        return self._value

    def get_member_set_profile_photo_details(self):
        """
        Only call this if :meth:`is_member_set_profile_photo_details` is true.

        :rtype: MemberSetProfilePhotoDetails
        """
        if not self.is_member_set_profile_photo_details():
            raise AttributeError("tag 'member_set_profile_photo_details' not set")
        return self._value

    def get_member_space_limits_add_custom_quota_details(self):
        """
        Only call this if :meth:`is_member_space_limits_add_custom_quota_details` is true.

        :rtype: MemberSpaceLimitsAddCustomQuotaDetails
        """
        if not self.is_member_space_limits_add_custom_quota_details():
            raise AttributeError("tag 'member_space_limits_add_custom_quota_details' not set")
        return self._value

    def get_member_space_limits_change_custom_quota_details(self):
        """
        Only call this if :meth:`is_member_space_limits_change_custom_quota_details` is true.

        :rtype: MemberSpaceLimitsChangeCustomQuotaDetails
        """
        if not self.is_member_space_limits_change_custom_quota_details():
            raise AttributeError("tag 'member_space_limits_change_custom_quota_details' not set")
        return self._value

    def get_member_space_limits_change_status_details(self):
        """
        Only call this if :meth:`is_member_space_limits_change_status_details` is true.

        :rtype: MemberSpaceLimitsChangeStatusDetails
        """
        if not self.is_member_space_limits_change_status_details():
            raise AttributeError("tag 'member_space_limits_change_status_details' not set")
        return self._value

    def get_member_space_limits_remove_custom_quota_details(self):
        """
        Only call this if :meth:`is_member_space_limits_remove_custom_quota_details` is true.

        :rtype: MemberSpaceLimitsRemoveCustomQuotaDetails
        """
        if not self.is_member_space_limits_remove_custom_quota_details():
            raise AttributeError("tag 'member_space_limits_remove_custom_quota_details' not set")
        return self._value

    def get_member_suggest_details(self):
        """
        Only call this if :meth:`is_member_suggest_details` is true.

        :rtype: MemberSuggestDetails
        """
        if not self.is_member_suggest_details():
            raise AttributeError("tag 'member_suggest_details' not set")
        return self._value

    def get_member_transfer_account_contents_details(self):
        """
        Only call this if :meth:`is_member_transfer_account_contents_details` is true.

        :rtype: MemberTransferAccountContentsDetails
        """
        if not self.is_member_transfer_account_contents_details():
            raise AttributeError("tag 'member_transfer_account_contents_details' not set")
        return self._value

    def get_pending_secondary_email_added_details(self):
        """
        Only call this if :meth:`is_pending_secondary_email_added_details` is true.

        :rtype: PendingSecondaryEmailAddedDetails
        """
        if not self.is_pending_secondary_email_added_details():
            raise AttributeError("tag 'pending_secondary_email_added_details' not set")
        return self._value

    def get_secondary_email_deleted_details(self):
        """
        Only call this if :meth:`is_secondary_email_deleted_details` is true.

        :rtype: SecondaryEmailDeletedDetails
        """
        if not self.is_secondary_email_deleted_details():
            raise AttributeError("tag 'secondary_email_deleted_details' not set")
        return self._value

    def get_secondary_email_verified_details(self):
        """
        Only call this if :meth:`is_secondary_email_verified_details` is true.

        :rtype: SecondaryEmailVerifiedDetails
        """
        if not self.is_secondary_email_verified_details():
            raise AttributeError("tag 'secondary_email_verified_details' not set")
        return self._value

    def get_secondary_mails_policy_changed_details(self):
        """
        Only call this if :meth:`is_secondary_mails_policy_changed_details` is true.

        :rtype: SecondaryMailsPolicyChangedDetails
        """
        if not self.is_secondary_mails_policy_changed_details():
            raise AttributeError("tag 'secondary_mails_policy_changed_details' not set")
        return self._value

    def get_binder_add_page_details(self):
        """
        Only call this if :meth:`is_binder_add_page_details` is true.

        :rtype: BinderAddPageDetails
        """
        if not self.is_binder_add_page_details():
            raise AttributeError("tag 'binder_add_page_details' not set")
        return self._value

    def get_binder_add_section_details(self):
        """
        Only call this if :meth:`is_binder_add_section_details` is true.

        :rtype: BinderAddSectionDetails
        """
        if not self.is_binder_add_section_details():
            raise AttributeError("tag 'binder_add_section_details' not set")
        return self._value

    def get_binder_remove_page_details(self):
        """
        Only call this if :meth:`is_binder_remove_page_details` is true.

        :rtype: BinderRemovePageDetails
        """
        if not self.is_binder_remove_page_details():
            raise AttributeError("tag 'binder_remove_page_details' not set")
        return self._value

    def get_binder_remove_section_details(self):
        """
        Only call this if :meth:`is_binder_remove_section_details` is true.

        :rtype: BinderRemoveSectionDetails
        """
        if not self.is_binder_remove_section_details():
            raise AttributeError("tag 'binder_remove_section_details' not set")
        return self._value

    def get_binder_rename_page_details(self):
        """
        Only call this if :meth:`is_binder_rename_page_details` is true.

        :rtype: BinderRenamePageDetails
        """
        if not self.is_binder_rename_page_details():
            raise AttributeError("tag 'binder_rename_page_details' not set")
        return self._value

    def get_binder_rename_section_details(self):
        """
        Only call this if :meth:`is_binder_rename_section_details` is true.

        :rtype: BinderRenameSectionDetails
        """
        if not self.is_binder_rename_section_details():
            raise AttributeError("tag 'binder_rename_section_details' not set")
        return self._value

    def get_binder_reorder_page_details(self):
        """
        Only call this if :meth:`is_binder_reorder_page_details` is true.

        :rtype: BinderReorderPageDetails
        """
        if not self.is_binder_reorder_page_details():
            raise AttributeError("tag 'binder_reorder_page_details' not set")
        return self._value

    def get_binder_reorder_section_details(self):
        """
        Only call this if :meth:`is_binder_reorder_section_details` is true.

        :rtype: BinderReorderSectionDetails
        """
        if not self.is_binder_reorder_section_details():
            raise AttributeError("tag 'binder_reorder_section_details' not set")
        return self._value

    def get_paper_content_add_member_details(self):
        """
        Only call this if :meth:`is_paper_content_add_member_details` is true.

        :rtype: PaperContentAddMemberDetails
        """
        if not self.is_paper_content_add_member_details():
            raise AttributeError("tag 'paper_content_add_member_details' not set")
        return self._value

    def get_paper_content_add_to_folder_details(self):
        """
        Only call this if :meth:`is_paper_content_add_to_folder_details` is true.

        :rtype: PaperContentAddToFolderDetails
        """
        if not self.is_paper_content_add_to_folder_details():
            raise AttributeError("tag 'paper_content_add_to_folder_details' not set")
        return self._value

    def get_paper_content_archive_details(self):
        """
        Only call this if :meth:`is_paper_content_archive_details` is true.

        :rtype: PaperContentArchiveDetails
        """
        if not self.is_paper_content_archive_details():
            raise AttributeError("tag 'paper_content_archive_details' not set")
        return self._value

    def get_paper_content_create_details(self):
        """
        Only call this if :meth:`is_paper_content_create_details` is true.

        :rtype: PaperContentCreateDetails
        """
        if not self.is_paper_content_create_details():
            raise AttributeError("tag 'paper_content_create_details' not set")
        return self._value

    def get_paper_content_permanently_delete_details(self):
        """
        Only call this if :meth:`is_paper_content_permanently_delete_details` is true.

        :rtype: PaperContentPermanentlyDeleteDetails
        """
        if not self.is_paper_content_permanently_delete_details():
            raise AttributeError("tag 'paper_content_permanently_delete_details' not set")
        return self._value

    def get_paper_content_remove_from_folder_details(self):
        """
        Only call this if :meth:`is_paper_content_remove_from_folder_details` is true.

        :rtype: PaperContentRemoveFromFolderDetails
        """
        if not self.is_paper_content_remove_from_folder_details():
            raise AttributeError("tag 'paper_content_remove_from_folder_details' not set")
        return self._value

    def get_paper_content_remove_member_details(self):
        """
        Only call this if :meth:`is_paper_content_remove_member_details` is true.

        :rtype: PaperContentRemoveMemberDetails
        """
        if not self.is_paper_content_remove_member_details():
            raise AttributeError("tag 'paper_content_remove_member_details' not set")
        return self._value

    def get_paper_content_rename_details(self):
        """
        Only call this if :meth:`is_paper_content_rename_details` is true.

        :rtype: PaperContentRenameDetails
        """
        if not self.is_paper_content_rename_details():
            raise AttributeError("tag 'paper_content_rename_details' not set")
        return self._value

    def get_paper_content_restore_details(self):
        """
        Only call this if :meth:`is_paper_content_restore_details` is true.

        :rtype: PaperContentRestoreDetails
        """
        if not self.is_paper_content_restore_details():
            raise AttributeError("tag 'paper_content_restore_details' not set")
        return self._value

    def get_paper_doc_add_comment_details(self):
        """
        Only call this if :meth:`is_paper_doc_add_comment_details` is true.

        :rtype: PaperDocAddCommentDetails
        """
        if not self.is_paper_doc_add_comment_details():
            raise AttributeError("tag 'paper_doc_add_comment_details' not set")
        return self._value

    def get_paper_doc_change_member_role_details(self):
        """
        Only call this if :meth:`is_paper_doc_change_member_role_details` is true.

        :rtype: PaperDocChangeMemberRoleDetails
        """
        if not self.is_paper_doc_change_member_role_details():
            raise AttributeError("tag 'paper_doc_change_member_role_details' not set")
        return self._value

    def get_paper_doc_change_sharing_policy_details(self):
        """
        Only call this if :meth:`is_paper_doc_change_sharing_policy_details` is true.

        :rtype: PaperDocChangeSharingPolicyDetails
        """
        if not self.is_paper_doc_change_sharing_policy_details():
            raise AttributeError("tag 'paper_doc_change_sharing_policy_details' not set")
        return self._value

    def get_paper_doc_change_subscription_details(self):
        """
        Only call this if :meth:`is_paper_doc_change_subscription_details` is true.

        :rtype: PaperDocChangeSubscriptionDetails
        """
        if not self.is_paper_doc_change_subscription_details():
            raise AttributeError("tag 'paper_doc_change_subscription_details' not set")
        return self._value

    def get_paper_doc_deleted_details(self):
        """
        Only call this if :meth:`is_paper_doc_deleted_details` is true.

        :rtype: PaperDocDeletedDetails
        """
        if not self.is_paper_doc_deleted_details():
            raise AttributeError("tag 'paper_doc_deleted_details' not set")
        return self._value

    def get_paper_doc_delete_comment_details(self):
        """
        Only call this if :meth:`is_paper_doc_delete_comment_details` is true.

        :rtype: PaperDocDeleteCommentDetails
        """
        if not self.is_paper_doc_delete_comment_details():
            raise AttributeError("tag 'paper_doc_delete_comment_details' not set")
        return self._value

    def get_paper_doc_download_details(self):
        """
        Only call this if :meth:`is_paper_doc_download_details` is true.

        :rtype: PaperDocDownloadDetails
        """
        if not self.is_paper_doc_download_details():
            raise AttributeError("tag 'paper_doc_download_details' not set")
        return self._value

    def get_paper_doc_edit_details(self):
        """
        Only call this if :meth:`is_paper_doc_edit_details` is true.

        :rtype: PaperDocEditDetails
        """
        if not self.is_paper_doc_edit_details():
            raise AttributeError("tag 'paper_doc_edit_details' not set")
        return self._value

    def get_paper_doc_edit_comment_details(self):
        """
        Only call this if :meth:`is_paper_doc_edit_comment_details` is true.

        :rtype: PaperDocEditCommentDetails
        """
        if not self.is_paper_doc_edit_comment_details():
            raise AttributeError("tag 'paper_doc_edit_comment_details' not set")
        return self._value

    def get_paper_doc_followed_details(self):
        """
        Only call this if :meth:`is_paper_doc_followed_details` is true.

        :rtype: PaperDocFollowedDetails
        """
        if not self.is_paper_doc_followed_details():
            raise AttributeError("tag 'paper_doc_followed_details' not set")
        return self._value

    def get_paper_doc_mention_details(self):
        """
        Only call this if :meth:`is_paper_doc_mention_details` is true.

        :rtype: PaperDocMentionDetails
        """
        if not self.is_paper_doc_mention_details():
            raise AttributeError("tag 'paper_doc_mention_details' not set")
        return self._value

    def get_paper_doc_ownership_changed_details(self):
        """
        Only call this if :meth:`is_paper_doc_ownership_changed_details` is true.

        :rtype: PaperDocOwnershipChangedDetails
        """
        if not self.is_paper_doc_ownership_changed_details():
            raise AttributeError("tag 'paper_doc_ownership_changed_details' not set")
        return self._value

    def get_paper_doc_request_access_details(self):
        """
        Only call this if :meth:`is_paper_doc_request_access_details` is true.

        :rtype: PaperDocRequestAccessDetails
        """
        if not self.is_paper_doc_request_access_details():
            raise AttributeError("tag 'paper_doc_request_access_details' not set")
        return self._value

    def get_paper_doc_resolve_comment_details(self):
        """
        Only call this if :meth:`is_paper_doc_resolve_comment_details` is true.

        :rtype: PaperDocResolveCommentDetails
        """
        if not self.is_paper_doc_resolve_comment_details():
            raise AttributeError("tag 'paper_doc_resolve_comment_details' not set")
        return self._value

    def get_paper_doc_revert_details(self):
        """
        Only call this if :meth:`is_paper_doc_revert_details` is true.

        :rtype: PaperDocRevertDetails
        """
        if not self.is_paper_doc_revert_details():
            raise AttributeError("tag 'paper_doc_revert_details' not set")
        return self._value

    def get_paper_doc_slack_share_details(self):
        """
        Only call this if :meth:`is_paper_doc_slack_share_details` is true.

        :rtype: PaperDocSlackShareDetails
        """
        if not self.is_paper_doc_slack_share_details():
            raise AttributeError("tag 'paper_doc_slack_share_details' not set")
        return self._value

    def get_paper_doc_team_invite_details(self):
        """
        Only call this if :meth:`is_paper_doc_team_invite_details` is true.

        :rtype: PaperDocTeamInviteDetails
        """
        if not self.is_paper_doc_team_invite_details():
            raise AttributeError("tag 'paper_doc_team_invite_details' not set")
        return self._value

    def get_paper_doc_trashed_details(self):
        """
        Only call this if :meth:`is_paper_doc_trashed_details` is true.

        :rtype: PaperDocTrashedDetails
        """
        if not self.is_paper_doc_trashed_details():
            raise AttributeError("tag 'paper_doc_trashed_details' not set")
        return self._value

    def get_paper_doc_unresolve_comment_details(self):
        """
        Only call this if :meth:`is_paper_doc_unresolve_comment_details` is true.

        :rtype: PaperDocUnresolveCommentDetails
        """
        if not self.is_paper_doc_unresolve_comment_details():
            raise AttributeError("tag 'paper_doc_unresolve_comment_details' not set")
        return self._value

    def get_paper_doc_untrashed_details(self):
        """
        Only call this if :meth:`is_paper_doc_untrashed_details` is true.

        :rtype: PaperDocUntrashedDetails
        """
        if not self.is_paper_doc_untrashed_details():
            raise AttributeError("tag 'paper_doc_untrashed_details' not set")
        return self._value

    def get_paper_doc_view_details(self):
        """
        Only call this if :meth:`is_paper_doc_view_details` is true.

        :rtype: PaperDocViewDetails
        """
        if not self.is_paper_doc_view_details():
            raise AttributeError("tag 'paper_doc_view_details' not set")
        return self._value

    def get_paper_external_view_allow_details(self):
        """
        Only call this if :meth:`is_paper_external_view_allow_details` is true.

        :rtype: PaperExternalViewAllowDetails
        """
        if not self.is_paper_external_view_allow_details():
            raise AttributeError("tag 'paper_external_view_allow_details' not set")
        return self._value

    def get_paper_external_view_default_team_details(self):
        """
        Only call this if :meth:`is_paper_external_view_default_team_details` is true.

        :rtype: PaperExternalViewDefaultTeamDetails
        """
        if not self.is_paper_external_view_default_team_details():
            raise AttributeError("tag 'paper_external_view_default_team_details' not set")
        return self._value

    def get_paper_external_view_forbid_details(self):
        """
        Only call this if :meth:`is_paper_external_view_forbid_details` is true.

        :rtype: PaperExternalViewForbidDetails
        """
        if not self.is_paper_external_view_forbid_details():
            raise AttributeError("tag 'paper_external_view_forbid_details' not set")
        return self._value

    def get_paper_folder_change_subscription_details(self):
        """
        Only call this if :meth:`is_paper_folder_change_subscription_details` is true.

        :rtype: PaperFolderChangeSubscriptionDetails
        """
        if not self.is_paper_folder_change_subscription_details():
            raise AttributeError("tag 'paper_folder_change_subscription_details' not set")
        return self._value

    def get_paper_folder_deleted_details(self):
        """
        Only call this if :meth:`is_paper_folder_deleted_details` is true.

        :rtype: PaperFolderDeletedDetails
        """
        if not self.is_paper_folder_deleted_details():
            raise AttributeError("tag 'paper_folder_deleted_details' not set")
        return self._value

    def get_paper_folder_followed_details(self):
        """
        Only call this if :meth:`is_paper_folder_followed_details` is true.

        :rtype: PaperFolderFollowedDetails
        """
        if not self.is_paper_folder_followed_details():
            raise AttributeError("tag 'paper_folder_followed_details' not set")
        return self._value

    def get_paper_folder_team_invite_details(self):
        """
        Only call this if :meth:`is_paper_folder_team_invite_details` is true.

        :rtype: PaperFolderTeamInviteDetails
        """
        if not self.is_paper_folder_team_invite_details():
            raise AttributeError("tag 'paper_folder_team_invite_details' not set")
        return self._value

    def get_paper_published_link_change_permission_details(self):
        """
        Only call this if :meth:`is_paper_published_link_change_permission_details` is true.

        :rtype: PaperPublishedLinkChangePermissionDetails
        """
        if not self.is_paper_published_link_change_permission_details():
            raise AttributeError("tag 'paper_published_link_change_permission_details' not set")
        return self._value

    def get_paper_published_link_create_details(self):
        """
        Only call this if :meth:`is_paper_published_link_create_details` is true.

        :rtype: PaperPublishedLinkCreateDetails
        """
        if not self.is_paper_published_link_create_details():
            raise AttributeError("tag 'paper_published_link_create_details' not set")
        return self._value

    def get_paper_published_link_disabled_details(self):
        """
        Only call this if :meth:`is_paper_published_link_disabled_details` is true.

        :rtype: PaperPublishedLinkDisabledDetails
        """
        if not self.is_paper_published_link_disabled_details():
            raise AttributeError("tag 'paper_published_link_disabled_details' not set")
        return self._value

    def get_paper_published_link_view_details(self):
        """
        Only call this if :meth:`is_paper_published_link_view_details` is true.

        :rtype: PaperPublishedLinkViewDetails
        """
        if not self.is_paper_published_link_view_details():
            raise AttributeError("tag 'paper_published_link_view_details' not set")
        return self._value

    def get_password_change_details(self):
        """
        Only call this if :meth:`is_password_change_details` is true.

        :rtype: PasswordChangeDetails
        """
        if not self.is_password_change_details():
            raise AttributeError("tag 'password_change_details' not set")
        return self._value

    def get_password_reset_details(self):
        """
        Only call this if :meth:`is_password_reset_details` is true.

        :rtype: PasswordResetDetails
        """
        if not self.is_password_reset_details():
            raise AttributeError("tag 'password_reset_details' not set")
        return self._value

    def get_password_reset_all_details(self):
        """
        Only call this if :meth:`is_password_reset_all_details` is true.

        :rtype: PasswordResetAllDetails
        """
        if not self.is_password_reset_all_details():
            raise AttributeError("tag 'password_reset_all_details' not set")
        return self._value

    def get_classification_create_report_details(self):
        """
        Only call this if :meth:`is_classification_create_report_details` is true.

        :rtype: ClassificationCreateReportDetails
        """
        if not self.is_classification_create_report_details():
            raise AttributeError("tag 'classification_create_report_details' not set")
        return self._value

    def get_classification_create_report_fail_details(self):
        """
        Only call this if :meth:`is_classification_create_report_fail_details` is true.

        :rtype: ClassificationCreateReportFailDetails
        """
        if not self.is_classification_create_report_fail_details():
            raise AttributeError("tag 'classification_create_report_fail_details' not set")
        return self._value

    def get_emm_create_exceptions_report_details(self):
        """
        Only call this if :meth:`is_emm_create_exceptions_report_details` is true.

        :rtype: EmmCreateExceptionsReportDetails
        """
        if not self.is_emm_create_exceptions_report_details():
            raise AttributeError("tag 'emm_create_exceptions_report_details' not set")
        return self._value

    def get_emm_create_usage_report_details(self):
        """
        Only call this if :meth:`is_emm_create_usage_report_details` is true.

        :rtype: EmmCreateUsageReportDetails
        """
        if not self.is_emm_create_usage_report_details():
            raise AttributeError("tag 'emm_create_usage_report_details' not set")
        return self._value

    def get_export_members_report_details(self):
        """
        Only call this if :meth:`is_export_members_report_details` is true.

        :rtype: ExportMembersReportDetails
        """
        if not self.is_export_members_report_details():
            raise AttributeError("tag 'export_members_report_details' not set")
        return self._value

    def get_export_members_report_fail_details(self):
        """
        Only call this if :meth:`is_export_members_report_fail_details` is true.

        :rtype: ExportMembersReportFailDetails
        """
        if not self.is_export_members_report_fail_details():
            raise AttributeError("tag 'export_members_report_fail_details' not set")
        return self._value

    def get_external_sharing_create_report_details(self):
        """
        Only call this if :meth:`is_external_sharing_create_report_details` is true.

        :rtype: ExternalSharingCreateReportDetails
        """
        if not self.is_external_sharing_create_report_details():
            raise AttributeError("tag 'external_sharing_create_report_details' not set")
        return self._value

    def get_external_sharing_report_failed_details(self):
        """
        Only call this if :meth:`is_external_sharing_report_failed_details` is true.

        :rtype: ExternalSharingReportFailedDetails
        """
        if not self.is_external_sharing_report_failed_details():
            raise AttributeError("tag 'external_sharing_report_failed_details' not set")
        return self._value

    def get_no_expiration_link_gen_create_report_details(self):
        """
        Only call this if :meth:`is_no_expiration_link_gen_create_report_details` is true.

        :rtype: NoExpirationLinkGenCreateReportDetails
        """
        if not self.is_no_expiration_link_gen_create_report_details():
            raise AttributeError("tag 'no_expiration_link_gen_create_report_details' not set")
        return self._value

    def get_no_expiration_link_gen_report_failed_details(self):
        """
        Only call this if :meth:`is_no_expiration_link_gen_report_failed_details` is true.

        :rtype: NoExpirationLinkGenReportFailedDetails
        """
        if not self.is_no_expiration_link_gen_report_failed_details():
            raise AttributeError("tag 'no_expiration_link_gen_report_failed_details' not set")
        return self._value

    def get_no_password_link_gen_create_report_details(self):
        """
        Only call this if :meth:`is_no_password_link_gen_create_report_details` is true.

        :rtype: NoPasswordLinkGenCreateReportDetails
        """
        if not self.is_no_password_link_gen_create_report_details():
            raise AttributeError("tag 'no_password_link_gen_create_report_details' not set")
        return self._value

    def get_no_password_link_gen_report_failed_details(self):
        """
        Only call this if :meth:`is_no_password_link_gen_report_failed_details` is true.

        :rtype: NoPasswordLinkGenReportFailedDetails
        """
        if not self.is_no_password_link_gen_report_failed_details():
            raise AttributeError("tag 'no_password_link_gen_report_failed_details' not set")
        return self._value

    def get_no_password_link_view_create_report_details(self):
        """
        Only call this if :meth:`is_no_password_link_view_create_report_details` is true.

        :rtype: NoPasswordLinkViewCreateReportDetails
        """
        if not self.is_no_password_link_view_create_report_details():
            raise AttributeError("tag 'no_password_link_view_create_report_details' not set")
        return self._value

    def get_no_password_link_view_report_failed_details(self):
        """
        Only call this if :meth:`is_no_password_link_view_report_failed_details` is true.

        :rtype: NoPasswordLinkViewReportFailedDetails
        """
        if not self.is_no_password_link_view_report_failed_details():
            raise AttributeError("tag 'no_password_link_view_report_failed_details' not set")
        return self._value

    def get_outdated_link_view_create_report_details(self):
        """
        Only call this if :meth:`is_outdated_link_view_create_report_details` is true.

        :rtype: OutdatedLinkViewCreateReportDetails
        """
        if not self.is_outdated_link_view_create_report_details():
            raise AttributeError("tag 'outdated_link_view_create_report_details' not set")
        return self._value

    def get_outdated_link_view_report_failed_details(self):
        """
        Only call this if :meth:`is_outdated_link_view_report_failed_details` is true.

        :rtype: OutdatedLinkViewReportFailedDetails
        """
        if not self.is_outdated_link_view_report_failed_details():
            raise AttributeError("tag 'outdated_link_view_report_failed_details' not set")
        return self._value

    def get_paper_admin_export_start_details(self):
        """
        Only call this if :meth:`is_paper_admin_export_start_details` is true.

        :rtype: PaperAdminExportStartDetails
        """
        if not self.is_paper_admin_export_start_details():
            raise AttributeError("tag 'paper_admin_export_start_details' not set")
        return self._value

    def get_smart_sync_create_admin_privilege_report_details(self):
        """
        Only call this if :meth:`is_smart_sync_create_admin_privilege_report_details` is true.

        :rtype: SmartSyncCreateAdminPrivilegeReportDetails
        """
        if not self.is_smart_sync_create_admin_privilege_report_details():
            raise AttributeError("tag 'smart_sync_create_admin_privilege_report_details' not set")
        return self._value

    def get_team_activity_create_report_details(self):
        """
        Only call this if :meth:`is_team_activity_create_report_details` is true.

        :rtype: TeamActivityCreateReportDetails
        """
        if not self.is_team_activity_create_report_details():
            raise AttributeError("tag 'team_activity_create_report_details' not set")
        return self._value

    def get_team_activity_create_report_fail_details(self):
        """
        Only call this if :meth:`is_team_activity_create_report_fail_details` is true.

        :rtype: TeamActivityCreateReportFailDetails
        """
        if not self.is_team_activity_create_report_fail_details():
            raise AttributeError("tag 'team_activity_create_report_fail_details' not set")
        return self._value

    def get_collection_share_details(self):
        """
        Only call this if :meth:`is_collection_share_details` is true.

        :rtype: CollectionShareDetails
        """
        if not self.is_collection_share_details():
            raise AttributeError("tag 'collection_share_details' not set")
        return self._value

    def get_file_transfers_file_add_details(self):
        """
        Only call this if :meth:`is_file_transfers_file_add_details` is true.

        :rtype: FileTransfersFileAddDetails
        """
        if not self.is_file_transfers_file_add_details():
            raise AttributeError("tag 'file_transfers_file_add_details' not set")
        return self._value

    def get_file_transfers_transfer_delete_details(self):
        """
        Only call this if :meth:`is_file_transfers_transfer_delete_details` is true.

        :rtype: FileTransfersTransferDeleteDetails
        """
        if not self.is_file_transfers_transfer_delete_details():
            raise AttributeError("tag 'file_transfers_transfer_delete_details' not set")
        return self._value

    def get_file_transfers_transfer_download_details(self):
        """
        Only call this if :meth:`is_file_transfers_transfer_download_details` is true.

        :rtype: FileTransfersTransferDownloadDetails
        """
        if not self.is_file_transfers_transfer_download_details():
            raise AttributeError("tag 'file_transfers_transfer_download_details' not set")
        return self._value

    def get_file_transfers_transfer_send_details(self):
        """
        Only call this if :meth:`is_file_transfers_transfer_send_details` is true.

        :rtype: FileTransfersTransferSendDetails
        """
        if not self.is_file_transfers_transfer_send_details():
            raise AttributeError("tag 'file_transfers_transfer_send_details' not set")
        return self._value

    def get_file_transfers_transfer_view_details(self):
        """
        Only call this if :meth:`is_file_transfers_transfer_view_details` is true.

        :rtype: FileTransfersTransferViewDetails
        """
        if not self.is_file_transfers_transfer_view_details():
            raise AttributeError("tag 'file_transfers_transfer_view_details' not set")
        return self._value

    def get_note_acl_invite_only_details(self):
        """
        Only call this if :meth:`is_note_acl_invite_only_details` is true.

        :rtype: NoteAclInviteOnlyDetails
        """
        if not self.is_note_acl_invite_only_details():
            raise AttributeError("tag 'note_acl_invite_only_details' not set")
        return self._value

    def get_note_acl_link_details(self):
        """
        Only call this if :meth:`is_note_acl_link_details` is true.

        :rtype: NoteAclLinkDetails
        """
        if not self.is_note_acl_link_details():
            raise AttributeError("tag 'note_acl_link_details' not set")
        return self._value

    def get_note_acl_team_link_details(self):
        """
        Only call this if :meth:`is_note_acl_team_link_details` is true.

        :rtype: NoteAclTeamLinkDetails
        """
        if not self.is_note_acl_team_link_details():
            raise AttributeError("tag 'note_acl_team_link_details' not set")
        return self._value

    def get_note_shared_details(self):
        """
        Only call this if :meth:`is_note_shared_details` is true.

        :rtype: NoteSharedDetails
        """
        if not self.is_note_shared_details():
            raise AttributeError("tag 'note_shared_details' not set")
        return self._value

    def get_note_share_receive_details(self):
        """
        Only call this if :meth:`is_note_share_receive_details` is true.

        :rtype: NoteShareReceiveDetails
        """
        if not self.is_note_share_receive_details():
            raise AttributeError("tag 'note_share_receive_details' not set")
        return self._value

    def get_open_note_shared_details(self):
        """
        Only call this if :meth:`is_open_note_shared_details` is true.

        :rtype: OpenNoteSharedDetails
        """
        if not self.is_open_note_shared_details():
            raise AttributeError("tag 'open_note_shared_details' not set")
        return self._value

    def get_sf_add_group_details(self):
        """
        Only call this if :meth:`is_sf_add_group_details` is true.

        :rtype: SfAddGroupDetails
        """
        if not self.is_sf_add_group_details():
            raise AttributeError("tag 'sf_add_group_details' not set")
        return self._value

    def get_sf_allow_non_members_to_view_shared_links_details(self):
        """
        Only call this if :meth:`is_sf_allow_non_members_to_view_shared_links_details` is true.

        :rtype: SfAllowNonMembersToViewSharedLinksDetails
        """
        if not self.is_sf_allow_non_members_to_view_shared_links_details():
            raise AttributeError("tag 'sf_allow_non_members_to_view_shared_links_details' not set")
        return self._value

    def get_sf_external_invite_warn_details(self):
        """
        Only call this if :meth:`is_sf_external_invite_warn_details` is true.

        :rtype: SfExternalInviteWarnDetails
        """
        if not self.is_sf_external_invite_warn_details():
            raise AttributeError("tag 'sf_external_invite_warn_details' not set")
        return self._value

    def get_sf_fb_invite_details(self):
        """
        Only call this if :meth:`is_sf_fb_invite_details` is true.

        :rtype: SfFbInviteDetails
        """
        if not self.is_sf_fb_invite_details():
            raise AttributeError("tag 'sf_fb_invite_details' not set")
        return self._value

    def get_sf_fb_invite_change_role_details(self):
        """
        Only call this if :meth:`is_sf_fb_invite_change_role_details` is true.

        :rtype: SfFbInviteChangeRoleDetails
        """
        if not self.is_sf_fb_invite_change_role_details():
            raise AttributeError("tag 'sf_fb_invite_change_role_details' not set")
        return self._value

    def get_sf_fb_uninvite_details(self):
        """
        Only call this if :meth:`is_sf_fb_uninvite_details` is true.

        :rtype: SfFbUninviteDetails
        """
        if not self.is_sf_fb_uninvite_details():
            raise AttributeError("tag 'sf_fb_uninvite_details' not set")
        return self._value

    def get_sf_invite_group_details(self):
        """
        Only call this if :meth:`is_sf_invite_group_details` is true.

        :rtype: SfInviteGroupDetails
        """
        if not self.is_sf_invite_group_details():
            raise AttributeError("tag 'sf_invite_group_details' not set")
        return self._value

    def get_sf_team_grant_access_details(self):
        """
        Only call this if :meth:`is_sf_team_grant_access_details` is true.

        :rtype: SfTeamGrantAccessDetails
        """
        if not self.is_sf_team_grant_access_details():
            raise AttributeError("tag 'sf_team_grant_access_details' not set")
        return self._value

    def get_sf_team_invite_details(self):
        """
        Only call this if :meth:`is_sf_team_invite_details` is true.

        :rtype: SfTeamInviteDetails
        """
        if not self.is_sf_team_invite_details():
            raise AttributeError("tag 'sf_team_invite_details' not set")
        return self._value

    def get_sf_team_invite_change_role_details(self):
        """
        Only call this if :meth:`is_sf_team_invite_change_role_details` is true.

        :rtype: SfTeamInviteChangeRoleDetails
        """
        if not self.is_sf_team_invite_change_role_details():
            raise AttributeError("tag 'sf_team_invite_change_role_details' not set")
        return self._value

    def get_sf_team_join_details(self):
        """
        Only call this if :meth:`is_sf_team_join_details` is true.

        :rtype: SfTeamJoinDetails
        """
        if not self.is_sf_team_join_details():
            raise AttributeError("tag 'sf_team_join_details' not set")
        return self._value

    def get_sf_team_join_from_oob_link_details(self):
        """
        Only call this if :meth:`is_sf_team_join_from_oob_link_details` is true.

        :rtype: SfTeamJoinFromOobLinkDetails
        """
        if not self.is_sf_team_join_from_oob_link_details():
            raise AttributeError("tag 'sf_team_join_from_oob_link_details' not set")
        return self._value

    def get_sf_team_uninvite_details(self):
        """
        Only call this if :meth:`is_sf_team_uninvite_details` is true.

        :rtype: SfTeamUninviteDetails
        """
        if not self.is_sf_team_uninvite_details():
            raise AttributeError("tag 'sf_team_uninvite_details' not set")
        return self._value

    def get_shared_content_add_invitees_details(self):
        """
        Only call this if :meth:`is_shared_content_add_invitees_details` is true.

        :rtype: SharedContentAddInviteesDetails
        """
        if not self.is_shared_content_add_invitees_details():
            raise AttributeError("tag 'shared_content_add_invitees_details' not set")
        return self._value

    def get_shared_content_add_link_expiry_details(self):
        """
        Only call this if :meth:`is_shared_content_add_link_expiry_details` is true.

        :rtype: SharedContentAddLinkExpiryDetails
        """
        if not self.is_shared_content_add_link_expiry_details():
            raise AttributeError("tag 'shared_content_add_link_expiry_details' not set")
        return self._value

    def get_shared_content_add_link_password_details(self):
        """
        Only call this if :meth:`is_shared_content_add_link_password_details` is true.

        :rtype: SharedContentAddLinkPasswordDetails
        """
        if not self.is_shared_content_add_link_password_details():
            raise AttributeError("tag 'shared_content_add_link_password_details' not set")
        return self._value

    def get_shared_content_add_member_details(self):
        """
        Only call this if :meth:`is_shared_content_add_member_details` is true.

        :rtype: SharedContentAddMemberDetails
        """
        if not self.is_shared_content_add_member_details():
            raise AttributeError("tag 'shared_content_add_member_details' not set")
        return self._value

    def get_shared_content_change_downloads_policy_details(self):
        """
        Only call this if :meth:`is_shared_content_change_downloads_policy_details` is true.

        :rtype: SharedContentChangeDownloadsPolicyDetails
        """
        if not self.is_shared_content_change_downloads_policy_details():
            raise AttributeError("tag 'shared_content_change_downloads_policy_details' not set")
        return self._value

    def get_shared_content_change_invitee_role_details(self):
        """
        Only call this if :meth:`is_shared_content_change_invitee_role_details` is true.

        :rtype: SharedContentChangeInviteeRoleDetails
        """
        if not self.is_shared_content_change_invitee_role_details():
            raise AttributeError("tag 'shared_content_change_invitee_role_details' not set")
        return self._value

    def get_shared_content_change_link_audience_details(self):
        """
        Only call this if :meth:`is_shared_content_change_link_audience_details` is true.

        :rtype: SharedContentChangeLinkAudienceDetails
        """
        if not self.is_shared_content_change_link_audience_details():
            raise AttributeError("tag 'shared_content_change_link_audience_details' not set")
        return self._value

    def get_shared_content_change_link_expiry_details(self):
        """
        Only call this if :meth:`is_shared_content_change_link_expiry_details` is true.

        :rtype: SharedContentChangeLinkExpiryDetails
        """
        if not self.is_shared_content_change_link_expiry_details():
            raise AttributeError("tag 'shared_content_change_link_expiry_details' not set")
        return self._value

    def get_shared_content_change_link_password_details(self):
        """
        Only call this if :meth:`is_shared_content_change_link_password_details` is true.

        :rtype: SharedContentChangeLinkPasswordDetails
        """
        if not self.is_shared_content_change_link_password_details():
            raise AttributeError("tag 'shared_content_change_link_password_details' not set")
        return self._value

    def get_shared_content_change_member_role_details(self):
        """
        Only call this if :meth:`is_shared_content_change_member_role_details` is true.

        :rtype: SharedContentChangeMemberRoleDetails
        """
        if not self.is_shared_content_change_member_role_details():
            raise AttributeError("tag 'shared_content_change_member_role_details' not set")
        return self._value

    def get_shared_content_change_viewer_info_policy_details(self):
        """
        Only call this if :meth:`is_shared_content_change_viewer_info_policy_details` is true.

        :rtype: SharedContentChangeViewerInfoPolicyDetails
        """
        if not self.is_shared_content_change_viewer_info_policy_details():
            raise AttributeError("tag 'shared_content_change_viewer_info_policy_details' not set")
        return self._value

    def get_shared_content_claim_invitation_details(self):
        """
        Only call this if :meth:`is_shared_content_claim_invitation_details` is true.

        :rtype: SharedContentClaimInvitationDetails
        """
        if not self.is_shared_content_claim_invitation_details():
            raise AttributeError("tag 'shared_content_claim_invitation_details' not set")
        return self._value

    def get_shared_content_copy_details(self):
        """
        Only call this if :meth:`is_shared_content_copy_details` is true.

        :rtype: SharedContentCopyDetails
        """
        if not self.is_shared_content_copy_details():
            raise AttributeError("tag 'shared_content_copy_details' not set")
        return self._value

    def get_shared_content_download_details(self):
        """
        Only call this if :meth:`is_shared_content_download_details` is true.

        :rtype: SharedContentDownloadDetails
        """
        if not self.is_shared_content_download_details():
            raise AttributeError("tag 'shared_content_download_details' not set")
        return self._value

    def get_shared_content_relinquish_membership_details(self):
        """
        Only call this if :meth:`is_shared_content_relinquish_membership_details` is true.

        :rtype: SharedContentRelinquishMembershipDetails
        """
        if not self.is_shared_content_relinquish_membership_details():
            raise AttributeError("tag 'shared_content_relinquish_membership_details' not set")
        return self._value

    def get_shared_content_remove_invitees_details(self):
        """
        Only call this if :meth:`is_shared_content_remove_invitees_details` is true.

        :rtype: SharedContentRemoveInviteesDetails
        """
        if not self.is_shared_content_remove_invitees_details():
            raise AttributeError("tag 'shared_content_remove_invitees_details' not set")
        return self._value

    def get_shared_content_remove_link_expiry_details(self):
        """
        Only call this if :meth:`is_shared_content_remove_link_expiry_details` is true.

        :rtype: SharedContentRemoveLinkExpiryDetails
        """
        if not self.is_shared_content_remove_link_expiry_details():
            raise AttributeError("tag 'shared_content_remove_link_expiry_details' not set")
        return self._value

    def get_shared_content_remove_link_password_details(self):
        """
        Only call this if :meth:`is_shared_content_remove_link_password_details` is true.

        :rtype: SharedContentRemoveLinkPasswordDetails
        """
        if not self.is_shared_content_remove_link_password_details():
            raise AttributeError("tag 'shared_content_remove_link_password_details' not set")
        return self._value

    def get_shared_content_remove_member_details(self):
        """
        Only call this if :meth:`is_shared_content_remove_member_details` is true.

        :rtype: SharedContentRemoveMemberDetails
        """
        if not self.is_shared_content_remove_member_details():
            raise AttributeError("tag 'shared_content_remove_member_details' not set")
        return self._value

    def get_shared_content_request_access_details(self):
        """
        Only call this if :meth:`is_shared_content_request_access_details` is true.

        :rtype: SharedContentRequestAccessDetails
        """
        if not self.is_shared_content_request_access_details():
            raise AttributeError("tag 'shared_content_request_access_details' not set")
        return self._value

    def get_shared_content_restore_invitees_details(self):
        """
        Only call this if :meth:`is_shared_content_restore_invitees_details` is true.

        :rtype: SharedContentRestoreInviteesDetails
        """
        if not self.is_shared_content_restore_invitees_details():
            raise AttributeError("tag 'shared_content_restore_invitees_details' not set")
        return self._value

    def get_shared_content_restore_member_details(self):
        """
        Only call this if :meth:`is_shared_content_restore_member_details` is true.

        :rtype: SharedContentRestoreMemberDetails
        """
        if not self.is_shared_content_restore_member_details():
            raise AttributeError("tag 'shared_content_restore_member_details' not set")
        return self._value

    def get_shared_content_unshare_details(self):
        """
        Only call this if :meth:`is_shared_content_unshare_details` is true.

        :rtype: SharedContentUnshareDetails
        """
        if not self.is_shared_content_unshare_details():
            raise AttributeError("tag 'shared_content_unshare_details' not set")
        return self._value

    def get_shared_content_view_details(self):
        """
        Only call this if :meth:`is_shared_content_view_details` is true.

        :rtype: SharedContentViewDetails
        """
        if not self.is_shared_content_view_details():
            raise AttributeError("tag 'shared_content_view_details' not set")
        return self._value

    def get_shared_folder_change_link_policy_details(self):
        """
        Only call this if :meth:`is_shared_folder_change_link_policy_details` is true.

        :rtype: SharedFolderChangeLinkPolicyDetails
        """
        if not self.is_shared_folder_change_link_policy_details():
            raise AttributeError("tag 'shared_folder_change_link_policy_details' not set")
        return self._value

    def get_shared_folder_change_members_inheritance_policy_details(self):
        """
        Only call this if :meth:`is_shared_folder_change_members_inheritance_policy_details` is true.

        :rtype: SharedFolderChangeMembersInheritancePolicyDetails
        """
        if not self.is_shared_folder_change_members_inheritance_policy_details():
            raise AttributeError("tag 'shared_folder_change_members_inheritance_policy_details' not set")
        return self._value

    def get_shared_folder_change_members_management_policy_details(self):
        """
        Only call this if :meth:`is_shared_folder_change_members_management_policy_details` is true.

        :rtype: SharedFolderChangeMembersManagementPolicyDetails
        """
        if not self.is_shared_folder_change_members_management_policy_details():
            raise AttributeError("tag 'shared_folder_change_members_management_policy_details' not set")
        return self._value

    def get_shared_folder_change_members_policy_details(self):
        """
        Only call this if :meth:`is_shared_folder_change_members_policy_details` is true.

        :rtype: SharedFolderChangeMembersPolicyDetails
        """
        if not self.is_shared_folder_change_members_policy_details():
            raise AttributeError("tag 'shared_folder_change_members_policy_details' not set")
        return self._value

    def get_shared_folder_create_details(self):
        """
        Only call this if :meth:`is_shared_folder_create_details` is true.

        :rtype: SharedFolderCreateDetails
        """
        if not self.is_shared_folder_create_details():
            raise AttributeError("tag 'shared_folder_create_details' not set")
        return self._value

    def get_shared_folder_decline_invitation_details(self):
        """
        Only call this if :meth:`is_shared_folder_decline_invitation_details` is true.

        :rtype: SharedFolderDeclineInvitationDetails
        """
        if not self.is_shared_folder_decline_invitation_details():
            raise AttributeError("tag 'shared_folder_decline_invitation_details' not set")
        return self._value

    def get_shared_folder_mount_details(self):
        """
        Only call this if :meth:`is_shared_folder_mount_details` is true.

        :rtype: SharedFolderMountDetails
        """
        if not self.is_shared_folder_mount_details():
            raise AttributeError("tag 'shared_folder_mount_details' not set")
        return self._value

    def get_shared_folder_nest_details(self):
        """
        Only call this if :meth:`is_shared_folder_nest_details` is true.

        :rtype: SharedFolderNestDetails
        """
        if not self.is_shared_folder_nest_details():
            raise AttributeError("tag 'shared_folder_nest_details' not set")
        return self._value

    def get_shared_folder_transfer_ownership_details(self):
        """
        Only call this if :meth:`is_shared_folder_transfer_ownership_details` is true.

        :rtype: SharedFolderTransferOwnershipDetails
        """
        if not self.is_shared_folder_transfer_ownership_details():
            raise AttributeError("tag 'shared_folder_transfer_ownership_details' not set")
        return self._value

    def get_shared_folder_unmount_details(self):
        """
        Only call this if :meth:`is_shared_folder_unmount_details` is true.

        :rtype: SharedFolderUnmountDetails
        """
        if not self.is_shared_folder_unmount_details():
            raise AttributeError("tag 'shared_folder_unmount_details' not set")
        return self._value

    def get_shared_link_add_expiry_details(self):
        """
        Only call this if :meth:`is_shared_link_add_expiry_details` is true.

        :rtype: SharedLinkAddExpiryDetails
        """
        if not self.is_shared_link_add_expiry_details():
            raise AttributeError("tag 'shared_link_add_expiry_details' not set")
        return self._value

    def get_shared_link_change_expiry_details(self):
        """
        Only call this if :meth:`is_shared_link_change_expiry_details` is true.

        :rtype: SharedLinkChangeExpiryDetails
        """
        if not self.is_shared_link_change_expiry_details():
            raise AttributeError("tag 'shared_link_change_expiry_details' not set")
        return self._value

    def get_shared_link_change_visibility_details(self):
        """
        Only call this if :meth:`is_shared_link_change_visibility_details` is true.

        :rtype: SharedLinkChangeVisibilityDetails
        """
        if not self.is_shared_link_change_visibility_details():
            raise AttributeError("tag 'shared_link_change_visibility_details' not set")
        return self._value

    def get_shared_link_copy_details(self):
        """
        Only call this if :meth:`is_shared_link_copy_details` is true.

        :rtype: SharedLinkCopyDetails
        """
        if not self.is_shared_link_copy_details():
            raise AttributeError("tag 'shared_link_copy_details' not set")
        return self._value

    def get_shared_link_create_details(self):
        """
        Only call this if :meth:`is_shared_link_create_details` is true.

        :rtype: SharedLinkCreateDetails
        """
        if not self.is_shared_link_create_details():
            raise AttributeError("tag 'shared_link_create_details' not set")
        return self._value

    def get_shared_link_disable_details(self):
        """
        Only call this if :meth:`is_shared_link_disable_details` is true.

        :rtype: SharedLinkDisableDetails
        """
        if not self.is_shared_link_disable_details():
            raise AttributeError("tag 'shared_link_disable_details' not set")
        return self._value

    def get_shared_link_download_details(self):
        """
        Only call this if :meth:`is_shared_link_download_details` is true.

        :rtype: SharedLinkDownloadDetails
        """
        if not self.is_shared_link_download_details():
            raise AttributeError("tag 'shared_link_download_details' not set")
        return self._value

    def get_shared_link_remove_expiry_details(self):
        """
        Only call this if :meth:`is_shared_link_remove_expiry_details` is true.

        :rtype: SharedLinkRemoveExpiryDetails
        """
        if not self.is_shared_link_remove_expiry_details():
            raise AttributeError("tag 'shared_link_remove_expiry_details' not set")
        return self._value

    def get_shared_link_settings_add_expiration_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_add_expiration_details` is true.

        :rtype: SharedLinkSettingsAddExpirationDetails
        """
        if not self.is_shared_link_settings_add_expiration_details():
            raise AttributeError("tag 'shared_link_settings_add_expiration_details' not set")
        return self._value

    def get_shared_link_settings_add_password_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_add_password_details` is true.

        :rtype: SharedLinkSettingsAddPasswordDetails
        """
        if not self.is_shared_link_settings_add_password_details():
            raise AttributeError("tag 'shared_link_settings_add_password_details' not set")
        return self._value

    def get_shared_link_settings_allow_download_disabled_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_allow_download_disabled_details` is true.

        :rtype: SharedLinkSettingsAllowDownloadDisabledDetails
        """
        if not self.is_shared_link_settings_allow_download_disabled_details():
            raise AttributeError("tag 'shared_link_settings_allow_download_disabled_details' not set")
        return self._value

    def get_shared_link_settings_allow_download_enabled_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_allow_download_enabled_details` is true.

        :rtype: SharedLinkSettingsAllowDownloadEnabledDetails
        """
        if not self.is_shared_link_settings_allow_download_enabled_details():
            raise AttributeError("tag 'shared_link_settings_allow_download_enabled_details' not set")
        return self._value

    def get_shared_link_settings_change_audience_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_change_audience_details` is true.

        :rtype: SharedLinkSettingsChangeAudienceDetails
        """
        if not self.is_shared_link_settings_change_audience_details():
            raise AttributeError("tag 'shared_link_settings_change_audience_details' not set")
        return self._value

    def get_shared_link_settings_change_expiration_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_change_expiration_details` is true.

        :rtype: SharedLinkSettingsChangeExpirationDetails
        """
        if not self.is_shared_link_settings_change_expiration_details():
            raise AttributeError("tag 'shared_link_settings_change_expiration_details' not set")
        return self._value

    def get_shared_link_settings_change_password_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_change_password_details` is true.

        :rtype: SharedLinkSettingsChangePasswordDetails
        """
        if not self.is_shared_link_settings_change_password_details():
            raise AttributeError("tag 'shared_link_settings_change_password_details' not set")
        return self._value

    def get_shared_link_settings_remove_expiration_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_remove_expiration_details` is true.

        :rtype: SharedLinkSettingsRemoveExpirationDetails
        """
        if not self.is_shared_link_settings_remove_expiration_details():
            raise AttributeError("tag 'shared_link_settings_remove_expiration_details' not set")
        return self._value

    def get_shared_link_settings_remove_password_details(self):
        """
        Only call this if :meth:`is_shared_link_settings_remove_password_details` is true.

        :rtype: SharedLinkSettingsRemovePasswordDetails
        """
        if not self.is_shared_link_settings_remove_password_details():
            raise AttributeError("tag 'shared_link_settings_remove_password_details' not set")
        return self._value

    def get_shared_link_share_details(self):
        """
        Only call this if :meth:`is_shared_link_share_details` is true.

        :rtype: SharedLinkShareDetails
        """
        if not self.is_shared_link_share_details():
            raise AttributeError("tag 'shared_link_share_details' not set")
        return self._value

    def get_shared_link_view_details(self):
        """
        Only call this if :meth:`is_shared_link_view_details` is true.

        :rtype: SharedLinkViewDetails
        """
        if not self.is_shared_link_view_details():
            raise AttributeError("tag 'shared_link_view_details' not set")
        return self._value

    def get_shared_note_opened_details(self):
        """
        Only call this if :meth:`is_shared_note_opened_details` is true.

        :rtype: SharedNoteOpenedDetails
        """
        if not self.is_shared_note_opened_details():
            raise AttributeError("tag 'shared_note_opened_details' not set")
        return self._value

    def get_shmodel_disable_downloads_details(self):
        """
        Only call this if :meth:`is_shmodel_disable_downloads_details` is true.

        :rtype: ShmodelDisableDownloadsDetails
        """
        if not self.is_shmodel_disable_downloads_details():
            raise AttributeError("tag 'shmodel_disable_downloads_details' not set")
        return self._value

    def get_shmodel_enable_downloads_details(self):
        """
        Only call this if :meth:`is_shmodel_enable_downloads_details` is true.

        :rtype: ShmodelEnableDownloadsDetails
        """
        if not self.is_shmodel_enable_downloads_details():
            raise AttributeError("tag 'shmodel_enable_downloads_details' not set")
        return self._value

    def get_shmodel_group_share_details(self):
        """
        Only call this if :meth:`is_shmodel_group_share_details` is true.

        :rtype: ShmodelGroupShareDetails
        """
        if not self.is_shmodel_group_share_details():
            raise AttributeError("tag 'shmodel_group_share_details' not set")
        return self._value

    def get_showcase_access_granted_details(self):
        """
        Only call this if :meth:`is_showcase_access_granted_details` is true.

        :rtype: ShowcaseAccessGrantedDetails
        """
        if not self.is_showcase_access_granted_details():
            raise AttributeError("tag 'showcase_access_granted_details' not set")
        return self._value

    def get_showcase_add_member_details(self):
        """
        Only call this if :meth:`is_showcase_add_member_details` is true.

        :rtype: ShowcaseAddMemberDetails
        """
        if not self.is_showcase_add_member_details():
            raise AttributeError("tag 'showcase_add_member_details' not set")
        return self._value

    def get_showcase_archived_details(self):
        """
        Only call this if :meth:`is_showcase_archived_details` is true.

        :rtype: ShowcaseArchivedDetails
        """
        if not self.is_showcase_archived_details():
            raise AttributeError("tag 'showcase_archived_details' not set")
        return self._value

    def get_showcase_created_details(self):
        """
        Only call this if :meth:`is_showcase_created_details` is true.

        :rtype: ShowcaseCreatedDetails
        """
        if not self.is_showcase_created_details():
            raise AttributeError("tag 'showcase_created_details' not set")
        return self._value

    def get_showcase_delete_comment_details(self):
        """
        Only call this if :meth:`is_showcase_delete_comment_details` is true.

        :rtype: ShowcaseDeleteCommentDetails
        """
        if not self.is_showcase_delete_comment_details():
            raise AttributeError("tag 'showcase_delete_comment_details' not set")
        return self._value

    def get_showcase_edited_details(self):
        """
        Only call this if :meth:`is_showcase_edited_details` is true.

        :rtype: ShowcaseEditedDetails
        """
        if not self.is_showcase_edited_details():
            raise AttributeError("tag 'showcase_edited_details' not set")
        return self._value

    def get_showcase_edit_comment_details(self):
        """
        Only call this if :meth:`is_showcase_edit_comment_details` is true.

        :rtype: ShowcaseEditCommentDetails
        """
        if not self.is_showcase_edit_comment_details():
            raise AttributeError("tag 'showcase_edit_comment_details' not set")
        return self._value

    def get_showcase_file_added_details(self):
        """
        Only call this if :meth:`is_showcase_file_added_details` is true.

        :rtype: ShowcaseFileAddedDetails
        """
        if not self.is_showcase_file_added_details():
            raise AttributeError("tag 'showcase_file_added_details' not set")
        return self._value

    def get_showcase_file_download_details(self):
        """
        Only call this if :meth:`is_showcase_file_download_details` is true.

        :rtype: ShowcaseFileDownloadDetails
        """
        if not self.is_showcase_file_download_details():
            raise AttributeError("tag 'showcase_file_download_details' not set")
        return self._value

    def get_showcase_file_removed_details(self):
        """
        Only call this if :meth:`is_showcase_file_removed_details` is true.

        :rtype: ShowcaseFileRemovedDetails
        """
        if not self.is_showcase_file_removed_details():
            raise AttributeError("tag 'showcase_file_removed_details' not set")
        return self._value

    def get_showcase_file_view_details(self):
        """
        Only call this if :meth:`is_showcase_file_view_details` is true.

        :rtype: ShowcaseFileViewDetails
        """
        if not self.is_showcase_file_view_details():
            raise AttributeError("tag 'showcase_file_view_details' not set")
        return self._value

    def get_showcase_permanently_deleted_details(self):
        """
        Only call this if :meth:`is_showcase_permanently_deleted_details` is true.

        :rtype: ShowcasePermanentlyDeletedDetails
        """
        if not self.is_showcase_permanently_deleted_details():
            raise AttributeError("tag 'showcase_permanently_deleted_details' not set")
        return self._value

    def get_showcase_post_comment_details(self):
        """
        Only call this if :meth:`is_showcase_post_comment_details` is true.

        :rtype: ShowcasePostCommentDetails
        """
        if not self.is_showcase_post_comment_details():
            raise AttributeError("tag 'showcase_post_comment_details' not set")
        return self._value

    def get_showcase_remove_member_details(self):
        """
        Only call this if :meth:`is_showcase_remove_member_details` is true.

        :rtype: ShowcaseRemoveMemberDetails
        """
        if not self.is_showcase_remove_member_details():
            raise AttributeError("tag 'showcase_remove_member_details' not set")
        return self._value

    def get_showcase_renamed_details(self):
        """
        Only call this if :meth:`is_showcase_renamed_details` is true.

        :rtype: ShowcaseRenamedDetails
        """
        if not self.is_showcase_renamed_details():
            raise AttributeError("tag 'showcase_renamed_details' not set")
        return self._value

    def get_showcase_request_access_details(self):
        """
        Only call this if :meth:`is_showcase_request_access_details` is true.

        :rtype: ShowcaseRequestAccessDetails
        """
        if not self.is_showcase_request_access_details():
            raise AttributeError("tag 'showcase_request_access_details' not set")
        return self._value

    def get_showcase_resolve_comment_details(self):
        """
        Only call this if :meth:`is_showcase_resolve_comment_details` is true.

        :rtype: ShowcaseResolveCommentDetails
        """
        if not self.is_showcase_resolve_comment_details():
            raise AttributeError("tag 'showcase_resolve_comment_details' not set")
        return self._value

    def get_showcase_restored_details(self):
        """
        Only call this if :meth:`is_showcase_restored_details` is true.

        :rtype: ShowcaseRestoredDetails
        """
        if not self.is_showcase_restored_details():
            raise AttributeError("tag 'showcase_restored_details' not set")
        return self._value

    def get_showcase_trashed_details(self):
        """
        Only call this if :meth:`is_showcase_trashed_details` is true.

        :rtype: ShowcaseTrashedDetails
        """
        if not self.is_showcase_trashed_details():
            raise AttributeError("tag 'showcase_trashed_details' not set")
        return self._value

    def get_showcase_trashed_deprecated_details(self):
        """
        Only call this if :meth:`is_showcase_trashed_deprecated_details` is true.

        :rtype: ShowcaseTrashedDeprecatedDetails
        """
        if not self.is_showcase_trashed_deprecated_details():
            raise AttributeError("tag 'showcase_trashed_deprecated_details' not set")
        return self._value

    def get_showcase_unresolve_comment_details(self):
        """
        Only call this if :meth:`is_showcase_unresolve_comment_details` is true.

        :rtype: ShowcaseUnresolveCommentDetails
        """
        if not self.is_showcase_unresolve_comment_details():
            raise AttributeError("tag 'showcase_unresolve_comment_details' not set")
        return self._value

    def get_showcase_untrashed_details(self):
        """
        Only call this if :meth:`is_showcase_untrashed_details` is true.

        :rtype: ShowcaseUntrashedDetails
        """
        if not self.is_showcase_untrashed_details():
            raise AttributeError("tag 'showcase_untrashed_details' not set")
        return self._value

    def get_showcase_untrashed_deprecated_details(self):
        """
        Only call this if :meth:`is_showcase_untrashed_deprecated_details` is true.

        :rtype: ShowcaseUntrashedDeprecatedDetails
        """
        if not self.is_showcase_untrashed_deprecated_details():
            raise AttributeError("tag 'showcase_untrashed_deprecated_details' not set")
        return self._value

    def get_showcase_view_details(self):
        """
        Only call this if :meth:`is_showcase_view_details` is true.

        :rtype: ShowcaseViewDetails
        """
        if not self.is_showcase_view_details():
            raise AttributeError("tag 'showcase_view_details' not set")
        return self._value

    def get_sso_add_cert_details(self):
        """
        Only call this if :meth:`is_sso_add_cert_details` is true.

        :rtype: SsoAddCertDetails
        """
        if not self.is_sso_add_cert_details():
            raise AttributeError("tag 'sso_add_cert_details' not set")
        return self._value

    def get_sso_add_login_url_details(self):
        """
        Only call this if :meth:`is_sso_add_login_url_details` is true.

        :rtype: SsoAddLoginUrlDetails
        """
        if not self.is_sso_add_login_url_details():
            raise AttributeError("tag 'sso_add_login_url_details' not set")
        return self._value

    def get_sso_add_logout_url_details(self):
        """
        Only call this if :meth:`is_sso_add_logout_url_details` is true.

        :rtype: SsoAddLogoutUrlDetails
        """
        if not self.is_sso_add_logout_url_details():
            raise AttributeError("tag 'sso_add_logout_url_details' not set")
        return self._value

    def get_sso_change_cert_details(self):
        """
        Only call this if :meth:`is_sso_change_cert_details` is true.

        :rtype: SsoChangeCertDetails
        """
        if not self.is_sso_change_cert_details():
            raise AttributeError("tag 'sso_change_cert_details' not set")
        return self._value

    def get_sso_change_login_url_details(self):
        """
        Only call this if :meth:`is_sso_change_login_url_details` is true.

        :rtype: SsoChangeLoginUrlDetails
        """
        if not self.is_sso_change_login_url_details():
            raise AttributeError("tag 'sso_change_login_url_details' not set")
        return self._value

    def get_sso_change_logout_url_details(self):
        """
        Only call this if :meth:`is_sso_change_logout_url_details` is true.

        :rtype: SsoChangeLogoutUrlDetails
        """
        if not self.is_sso_change_logout_url_details():
            raise AttributeError("tag 'sso_change_logout_url_details' not set")
        return self._value

    def get_sso_change_saml_identity_mode_details(self):
        """
        Only call this if :meth:`is_sso_change_saml_identity_mode_details` is true.

        :rtype: SsoChangeSamlIdentityModeDetails
        """
        if not self.is_sso_change_saml_identity_mode_details():
            raise AttributeError("tag 'sso_change_saml_identity_mode_details' not set")
        return self._value

    def get_sso_remove_cert_details(self):
        """
        Only call this if :meth:`is_sso_remove_cert_details` is true.

        :rtype: SsoRemoveCertDetails
        """
        if not self.is_sso_remove_cert_details():
            raise AttributeError("tag 'sso_remove_cert_details' not set")
        return self._value

    def get_sso_remove_login_url_details(self):
        """
        Only call this if :meth:`is_sso_remove_login_url_details` is true.

        :rtype: SsoRemoveLoginUrlDetails
        """
        if not self.is_sso_remove_login_url_details():
            raise AttributeError("tag 'sso_remove_login_url_details' not set")
        return self._value

    def get_sso_remove_logout_url_details(self):
        """
        Only call this if :meth:`is_sso_remove_logout_url_details` is true.

        :rtype: SsoRemoveLogoutUrlDetails
        """
        if not self.is_sso_remove_logout_url_details():
            raise AttributeError("tag 'sso_remove_logout_url_details' not set")
        return self._value

    def get_team_folder_change_status_details(self):
        """
        Only call this if :meth:`is_team_folder_change_status_details` is true.

        :rtype: TeamFolderChangeStatusDetails
        """
        if not self.is_team_folder_change_status_details():
            raise AttributeError("tag 'team_folder_change_status_details' not set")
        return self._value

    def get_team_folder_create_details(self):
        """
        Only call this if :meth:`is_team_folder_create_details` is true.

        :rtype: TeamFolderCreateDetails
        """
        if not self.is_team_folder_create_details():
            raise AttributeError("tag 'team_folder_create_details' not set")
        return self._value

    def get_team_folder_downgrade_details(self):
        """
        Only call this if :meth:`is_team_folder_downgrade_details` is true.

        :rtype: TeamFolderDowngradeDetails
        """
        if not self.is_team_folder_downgrade_details():
            raise AttributeError("tag 'team_folder_downgrade_details' not set")
        return self._value

    def get_team_folder_permanently_delete_details(self):
        """
        Only call this if :meth:`is_team_folder_permanently_delete_details` is true.

        :rtype: TeamFolderPermanentlyDeleteDetails
        """
        if not self.is_team_folder_permanently_delete_details():
            raise AttributeError("tag 'team_folder_permanently_delete_details' not set")
        return self._value

    def get_team_folder_rename_details(self):
        """
        Only call this if :meth:`is_team_folder_rename_details` is true.

        :rtype: TeamFolderRenameDetails
        """
        if not self.is_team_folder_rename_details():
            raise AttributeError("tag 'team_folder_rename_details' not set")
        return self._value

    def get_team_selective_sync_settings_changed_details(self):
        """
        Only call this if :meth:`is_team_selective_sync_settings_changed_details` is true.

        :rtype: TeamSelectiveSyncSettingsChangedDetails
        """
        if not self.is_team_selective_sync_settings_changed_details():
            raise AttributeError("tag 'team_selective_sync_settings_changed_details' not set")
        return self._value

    def get_account_capture_change_policy_details(self):
        """
        Only call this if :meth:`is_account_capture_change_policy_details` is true.

        :rtype: AccountCaptureChangePolicyDetails
        """
        if not self.is_account_capture_change_policy_details():
            raise AttributeError("tag 'account_capture_change_policy_details' not set")
        return self._value

    def get_admin_email_reminders_changed_details(self):
        """
        Only call this if :meth:`is_admin_email_reminders_changed_details` is true.

        :rtype: AdminEmailRemindersChangedDetails
        """
        if not self.is_admin_email_reminders_changed_details():
            raise AttributeError("tag 'admin_email_reminders_changed_details' not set")
        return self._value

    def get_allow_download_disabled_details(self):
        """
        Only call this if :meth:`is_allow_download_disabled_details` is true.

        :rtype: AllowDownloadDisabledDetails
        """
        if not self.is_allow_download_disabled_details():
            raise AttributeError("tag 'allow_download_disabled_details' not set")
        return self._value

    def get_allow_download_enabled_details(self):
        """
        Only call this if :meth:`is_allow_download_enabled_details` is true.

        :rtype: AllowDownloadEnabledDetails
        """
        if not self.is_allow_download_enabled_details():
            raise AttributeError("tag 'allow_download_enabled_details' not set")
        return self._value

    def get_app_permissions_changed_details(self):
        """
        Only call this if :meth:`is_app_permissions_changed_details` is true.

        :rtype: AppPermissionsChangedDetails
        """
        if not self.is_app_permissions_changed_details():
            raise AttributeError("tag 'app_permissions_changed_details' not set")
        return self._value

    def get_camera_uploads_policy_changed_details(self):
        """
        Only call this if :meth:`is_camera_uploads_policy_changed_details` is true.

        :rtype: CameraUploadsPolicyChangedDetails
        """
        if not self.is_camera_uploads_policy_changed_details():
            raise AttributeError("tag 'camera_uploads_policy_changed_details' not set")
        return self._value

    def get_capture_transcript_policy_changed_details(self):
        """
        Only call this if :meth:`is_capture_transcript_policy_changed_details` is true.

        :rtype: CaptureTranscriptPolicyChangedDetails
        """
        if not self.is_capture_transcript_policy_changed_details():
            raise AttributeError("tag 'capture_transcript_policy_changed_details' not set")
        return self._value

    def get_classification_change_policy_details(self):
        """
        Only call this if :meth:`is_classification_change_policy_details` is true.

        :rtype: ClassificationChangePolicyDetails
        """
        if not self.is_classification_change_policy_details():
            raise AttributeError("tag 'classification_change_policy_details' not set")
        return self._value

    def get_computer_backup_policy_changed_details(self):
        """
        Only call this if :meth:`is_computer_backup_policy_changed_details` is true.

        :rtype: ComputerBackupPolicyChangedDetails
        """
        if not self.is_computer_backup_policy_changed_details():
            raise AttributeError("tag 'computer_backup_policy_changed_details' not set")
        return self._value

    def get_content_administration_policy_changed_details(self):
        """
        Only call this if :meth:`is_content_administration_policy_changed_details` is true.

        :rtype: ContentAdministrationPolicyChangedDetails
        """
        if not self.is_content_administration_policy_changed_details():
            raise AttributeError("tag 'content_administration_policy_changed_details' not set")
        return self._value

    def get_data_placement_restriction_change_policy_details(self):
        """
        Only call this if :meth:`is_data_placement_restriction_change_policy_details` is true.

        :rtype: DataPlacementRestrictionChangePolicyDetails
        """
        if not self.is_data_placement_restriction_change_policy_details():
            raise AttributeError("tag 'data_placement_restriction_change_policy_details' not set")
        return self._value

    def get_data_placement_restriction_satisfy_policy_details(self):
        """
        Only call this if :meth:`is_data_placement_restriction_satisfy_policy_details` is true.

        :rtype: DataPlacementRestrictionSatisfyPolicyDetails
        """
        if not self.is_data_placement_restriction_satisfy_policy_details():
            raise AttributeError("tag 'data_placement_restriction_satisfy_policy_details' not set")
        return self._value

    def get_device_approvals_add_exception_details(self):
        """
        Only call this if :meth:`is_device_approvals_add_exception_details` is true.

        :rtype: DeviceApprovalsAddExceptionDetails
        """
        if not self.is_device_approvals_add_exception_details():
            raise AttributeError("tag 'device_approvals_add_exception_details' not set")
        return self._value

    def get_device_approvals_change_desktop_policy_details(self):
        """
        Only call this if :meth:`is_device_approvals_change_desktop_policy_details` is true.

        :rtype: DeviceApprovalsChangeDesktopPolicyDetails
        """
        if not self.is_device_approvals_change_desktop_policy_details():
            raise AttributeError("tag 'device_approvals_change_desktop_policy_details' not set")
        return self._value

    def get_device_approvals_change_mobile_policy_details(self):
        """
        Only call this if :meth:`is_device_approvals_change_mobile_policy_details` is true.

        :rtype: DeviceApprovalsChangeMobilePolicyDetails
        """
        if not self.is_device_approvals_change_mobile_policy_details():
            raise AttributeError("tag 'device_approvals_change_mobile_policy_details' not set")
        return self._value

    def get_device_approvals_change_overage_action_details(self):
        """
        Only call this if :meth:`is_device_approvals_change_overage_action_details` is true.

        :rtype: DeviceApprovalsChangeOverageActionDetails
        """
        if not self.is_device_approvals_change_overage_action_details():
            raise AttributeError("tag 'device_approvals_change_overage_action_details' not set")
        return self._value

    def get_device_approvals_change_unlink_action_details(self):
        """
        Only call this if :meth:`is_device_approvals_change_unlink_action_details` is true.

        :rtype: DeviceApprovalsChangeUnlinkActionDetails
        """
        if not self.is_device_approvals_change_unlink_action_details():
            raise AttributeError("tag 'device_approvals_change_unlink_action_details' not set")
        return self._value

    def get_device_approvals_remove_exception_details(self):
        """
        Only call this if :meth:`is_device_approvals_remove_exception_details` is true.

        :rtype: DeviceApprovalsRemoveExceptionDetails
        """
        if not self.is_device_approvals_remove_exception_details():
            raise AttributeError("tag 'device_approvals_remove_exception_details' not set")
        return self._value

    def get_directory_restrictions_add_members_details(self):
        """
        Only call this if :meth:`is_directory_restrictions_add_members_details` is true.

        :rtype: DirectoryRestrictionsAddMembersDetails
        """
        if not self.is_directory_restrictions_add_members_details():
            raise AttributeError("tag 'directory_restrictions_add_members_details' not set")
        return self._value

    def get_directory_restrictions_remove_members_details(self):
        """
        Only call this if :meth:`is_directory_restrictions_remove_members_details` is true.

        :rtype: DirectoryRestrictionsRemoveMembersDetails
        """
        if not self.is_directory_restrictions_remove_members_details():
            raise AttributeError("tag 'directory_restrictions_remove_members_details' not set")
        return self._value

    def get_dropbox_passwords_policy_changed_details(self):
        """
        Only call this if :meth:`is_dropbox_passwords_policy_changed_details` is true.

        :rtype: DropboxPasswordsPolicyChangedDetails
        """
        if not self.is_dropbox_passwords_policy_changed_details():
            raise AttributeError("tag 'dropbox_passwords_policy_changed_details' not set")
        return self._value

    def get_email_ingest_policy_changed_details(self):
        """
        Only call this if :meth:`is_email_ingest_policy_changed_details` is true.

        :rtype: EmailIngestPolicyChangedDetails
        """
        if not self.is_email_ingest_policy_changed_details():
            raise AttributeError("tag 'email_ingest_policy_changed_details' not set")
        return self._value

    def get_emm_add_exception_details(self):
        """
        Only call this if :meth:`is_emm_add_exception_details` is true.

        :rtype: EmmAddExceptionDetails
        """
        if not self.is_emm_add_exception_details():
            raise AttributeError("tag 'emm_add_exception_details' not set")
        return self._value

    def get_emm_change_policy_details(self):
        """
        Only call this if :meth:`is_emm_change_policy_details` is true.

        :rtype: EmmChangePolicyDetails
        """
        if not self.is_emm_change_policy_details():
            raise AttributeError("tag 'emm_change_policy_details' not set")
        return self._value

    def get_emm_remove_exception_details(self):
        """
        Only call this if :meth:`is_emm_remove_exception_details` is true.

        :rtype: EmmRemoveExceptionDetails
        """
        if not self.is_emm_remove_exception_details():
            raise AttributeError("tag 'emm_remove_exception_details' not set")
        return self._value

    def get_extended_version_history_change_policy_details(self):
        """
        Only call this if :meth:`is_extended_version_history_change_policy_details` is true.

        :rtype: ExtendedVersionHistoryChangePolicyDetails
        """
        if not self.is_extended_version_history_change_policy_details():
            raise AttributeError("tag 'extended_version_history_change_policy_details' not set")
        return self._value

    def get_external_drive_backup_policy_changed_details(self):
        """
        Only call this if :meth:`is_external_drive_backup_policy_changed_details` is true.

        :rtype: ExternalDriveBackupPolicyChangedDetails
        """
        if not self.is_external_drive_backup_policy_changed_details():
            raise AttributeError("tag 'external_drive_backup_policy_changed_details' not set")
        return self._value

    def get_file_comments_change_policy_details(self):
        """
        Only call this if :meth:`is_file_comments_change_policy_details` is true.

        :rtype: FileCommentsChangePolicyDetails
        """
        if not self.is_file_comments_change_policy_details():
            raise AttributeError("tag 'file_comments_change_policy_details' not set")
        return self._value

    def get_file_locking_policy_changed_details(self):
        """
        Only call this if :meth:`is_file_locking_policy_changed_details` is true.

        :rtype: FileLockingPolicyChangedDetails
        """
        if not self.is_file_locking_policy_changed_details():
            raise AttributeError("tag 'file_locking_policy_changed_details' not set")
        return self._value

    def get_file_provider_migration_policy_changed_details(self):
        """
        Only call this if :meth:`is_file_provider_migration_policy_changed_details` is true.

        :rtype: FileProviderMigrationPolicyChangedDetails
        """
        if not self.is_file_provider_migration_policy_changed_details():
            raise AttributeError("tag 'file_provider_migration_policy_changed_details' not set")
        return self._value

    def get_file_requests_change_policy_details(self):
        """
        Only call this if :meth:`is_file_requests_change_policy_details` is true.

        :rtype: FileRequestsChangePolicyDetails
        """
        if not self.is_file_requests_change_policy_details():
            raise AttributeError("tag 'file_requests_change_policy_details' not set")
        return self._value

    def get_file_requests_emails_enabled_details(self):
        """
        Only call this if :meth:`is_file_requests_emails_enabled_details` is true.

        :rtype: FileRequestsEmailsEnabledDetails
        """
        if not self.is_file_requests_emails_enabled_details():
            raise AttributeError("tag 'file_requests_emails_enabled_details' not set")
        return self._value

    def get_file_requests_emails_restricted_to_team_only_details(self):
        """
        Only call this if :meth:`is_file_requests_emails_restricted_to_team_only_details` is true.

        :rtype: FileRequestsEmailsRestrictedToTeamOnlyDetails
        """
        if not self.is_file_requests_emails_restricted_to_team_only_details():
            raise AttributeError("tag 'file_requests_emails_restricted_to_team_only_details' not set")
        return self._value

    def get_file_transfers_policy_changed_details(self):
        """
        Only call this if :meth:`is_file_transfers_policy_changed_details` is true.

        :rtype: FileTransfersPolicyChangedDetails
        """
        if not self.is_file_transfers_policy_changed_details():
            raise AttributeError("tag 'file_transfers_policy_changed_details' not set")
        return self._value

    def get_folder_link_restriction_policy_changed_details(self):
        """
        Only call this if :meth:`is_folder_link_restriction_policy_changed_details` is true.

        :rtype: FolderLinkRestrictionPolicyChangedDetails
        """
        if not self.is_folder_link_restriction_policy_changed_details():
            raise AttributeError("tag 'folder_link_restriction_policy_changed_details' not set")
        return self._value

    def get_google_sso_change_policy_details(self):
        """
        Only call this if :meth:`is_google_sso_change_policy_details` is true.

        :rtype: GoogleSsoChangePolicyDetails
        """
        if not self.is_google_sso_change_policy_details():
            raise AttributeError("tag 'google_sso_change_policy_details' not set")
        return self._value

    def get_group_user_management_change_policy_details(self):
        """
        Only call this if :meth:`is_group_user_management_change_policy_details` is true.

        :rtype: GroupUserManagementChangePolicyDetails
        """
        if not self.is_group_user_management_change_policy_details():
            raise AttributeError("tag 'group_user_management_change_policy_details' not set")
        return self._value

    def get_integration_policy_changed_details(self):
        """
        Only call this if :meth:`is_integration_policy_changed_details` is true.

        :rtype: IntegrationPolicyChangedDetails
        """
        if not self.is_integration_policy_changed_details():
            raise AttributeError("tag 'integration_policy_changed_details' not set")
        return self._value

    def get_invite_acceptance_email_policy_changed_details(self):
        """
        Only call this if :meth:`is_invite_acceptance_email_policy_changed_details` is true.

        :rtype: InviteAcceptanceEmailPolicyChangedDetails
        """
        if not self.is_invite_acceptance_email_policy_changed_details():
            raise AttributeError("tag 'invite_acceptance_email_policy_changed_details' not set")
        return self._value

    def get_member_requests_change_policy_details(self):
        """
        Only call this if :meth:`is_member_requests_change_policy_details` is true.

        :rtype: MemberRequestsChangePolicyDetails
        """
        if not self.is_member_requests_change_policy_details():
            raise AttributeError("tag 'member_requests_change_policy_details' not set")
        return self._value

    def get_member_send_invite_policy_changed_details(self):
        """
        Only call this if :meth:`is_member_send_invite_policy_changed_details` is true.

        :rtype: MemberSendInvitePolicyChangedDetails
        """
        if not self.is_member_send_invite_policy_changed_details():
            raise AttributeError("tag 'member_send_invite_policy_changed_details' not set")
        return self._value

    def get_member_space_limits_add_exception_details(self):
        """
        Only call this if :meth:`is_member_space_limits_add_exception_details` is true.

        :rtype: MemberSpaceLimitsAddExceptionDetails
        """
        if not self.is_member_space_limits_add_exception_details():
            raise AttributeError("tag 'member_space_limits_add_exception_details' not set")
        return self._value

    def get_member_space_limits_change_caps_type_policy_details(self):
        """
        Only call this if :meth:`is_member_space_limits_change_caps_type_policy_details` is true.

        :rtype: MemberSpaceLimitsChangeCapsTypePolicyDetails
        """
        if not self.is_member_space_limits_change_caps_type_policy_details():
            raise AttributeError("tag 'member_space_limits_change_caps_type_policy_details' not set")
        return self._value

    def get_member_space_limits_change_policy_details(self):
        """
        Only call this if :meth:`is_member_space_limits_change_policy_details` is true.

        :rtype: MemberSpaceLimitsChangePolicyDetails
        """
        if not self.is_member_space_limits_change_policy_details():
            raise AttributeError("tag 'member_space_limits_change_policy_details' not set")
        return self._value

    def get_member_space_limits_remove_exception_details(self):
        """
        Only call this if :meth:`is_member_space_limits_remove_exception_details` is true.

        :rtype: MemberSpaceLimitsRemoveExceptionDetails
        """
        if not self.is_member_space_limits_remove_exception_details():
            raise AttributeError("tag 'member_space_limits_remove_exception_details' not set")
        return self._value

    def get_member_suggestions_change_policy_details(self):
        """
        Only call this if :meth:`is_member_suggestions_change_policy_details` is true.

        :rtype: MemberSuggestionsChangePolicyDetails
        """
        if not self.is_member_suggestions_change_policy_details():
            raise AttributeError("tag 'member_suggestions_change_policy_details' not set")
        return self._value

    def get_microsoft_office_addin_change_policy_details(self):
        """
        Only call this if :meth:`is_microsoft_office_addin_change_policy_details` is true.

        :rtype: MicrosoftOfficeAddinChangePolicyDetails
        """
        if not self.is_microsoft_office_addin_change_policy_details():
            raise AttributeError("tag 'microsoft_office_addin_change_policy_details' not set")
        return self._value

    def get_network_control_change_policy_details(self):
        """
        Only call this if :meth:`is_network_control_change_policy_details` is true.

        :rtype: NetworkControlChangePolicyDetails
        """
        if not self.is_network_control_change_policy_details():
            raise AttributeError("tag 'network_control_change_policy_details' not set")
        return self._value

    def get_paper_change_deployment_policy_details(self):
        """
        Only call this if :meth:`is_paper_change_deployment_policy_details` is true.

        :rtype: PaperChangeDeploymentPolicyDetails
        """
        if not self.is_paper_change_deployment_policy_details():
            raise AttributeError("tag 'paper_change_deployment_policy_details' not set")
        return self._value

    def get_paper_change_member_link_policy_details(self):
        """
        Only call this if :meth:`is_paper_change_member_link_policy_details` is true.

        :rtype: PaperChangeMemberLinkPolicyDetails
        """
        if not self.is_paper_change_member_link_policy_details():
            raise AttributeError("tag 'paper_change_member_link_policy_details' not set")
        return self._value

    def get_paper_change_member_policy_details(self):
        """
        Only call this if :meth:`is_paper_change_member_policy_details` is true.

        :rtype: PaperChangeMemberPolicyDetails
        """
        if not self.is_paper_change_member_policy_details():
            raise AttributeError("tag 'paper_change_member_policy_details' not set")
        return self._value

    def get_paper_change_policy_details(self):
        """
        Only call this if :meth:`is_paper_change_policy_details` is true.

        :rtype: PaperChangePolicyDetails
        """
        if not self.is_paper_change_policy_details():
            raise AttributeError("tag 'paper_change_policy_details' not set")
        return self._value

    def get_paper_default_folder_policy_changed_details(self):
        """
        Only call this if :meth:`is_paper_default_folder_policy_changed_details` is true.

        :rtype: PaperDefaultFolderPolicyChangedDetails
        """
        if not self.is_paper_default_folder_policy_changed_details():
            raise AttributeError("tag 'paper_default_folder_policy_changed_details' not set")
        return self._value

    def get_paper_desktop_policy_changed_details(self):
        """
        Only call this if :meth:`is_paper_desktop_policy_changed_details` is true.

        :rtype: PaperDesktopPolicyChangedDetails
        """
        if not self.is_paper_desktop_policy_changed_details():
            raise AttributeError("tag 'paper_desktop_policy_changed_details' not set")
        return self._value

    def get_paper_enabled_users_group_addition_details(self):
        """
        Only call this if :meth:`is_paper_enabled_users_group_addition_details` is true.

        :rtype: PaperEnabledUsersGroupAdditionDetails
        """
        if not self.is_paper_enabled_users_group_addition_details():
            raise AttributeError("tag 'paper_enabled_users_group_addition_details' not set")
        return self._value

    def get_paper_enabled_users_group_removal_details(self):
        """
        Only call this if :meth:`is_paper_enabled_users_group_removal_details` is true.

        :rtype: PaperEnabledUsersGroupRemovalDetails
        """
        if not self.is_paper_enabled_users_group_removal_details():
            raise AttributeError("tag 'paper_enabled_users_group_removal_details' not set")
        return self._value

    def get_password_strength_requirements_change_policy_details(self):
        """
        Only call this if :meth:`is_password_strength_requirements_change_policy_details` is true.

        :rtype: PasswordStrengthRequirementsChangePolicyDetails
        """
        if not self.is_password_strength_requirements_change_policy_details():
            raise AttributeError("tag 'password_strength_requirements_change_policy_details' not set")
        return self._value

    def get_permanent_delete_change_policy_details(self):
        """
        Only call this if :meth:`is_permanent_delete_change_policy_details` is true.

        :rtype: PermanentDeleteChangePolicyDetails
        """
        if not self.is_permanent_delete_change_policy_details():
            raise AttributeError("tag 'permanent_delete_change_policy_details' not set")
        return self._value

    def get_reseller_support_change_policy_details(self):
        """
        Only call this if :meth:`is_reseller_support_change_policy_details` is true.

        :rtype: ResellerSupportChangePolicyDetails
        """
        if not self.is_reseller_support_change_policy_details():
            raise AttributeError("tag 'reseller_support_change_policy_details' not set")
        return self._value

    def get_rewind_policy_changed_details(self):
        """
        Only call this if :meth:`is_rewind_policy_changed_details` is true.

        :rtype: RewindPolicyChangedDetails
        """
        if not self.is_rewind_policy_changed_details():
            raise AttributeError("tag 'rewind_policy_changed_details' not set")
        return self._value

    def get_send_for_signature_policy_changed_details(self):
        """
        Only call this if :meth:`is_send_for_signature_policy_changed_details` is true.

        :rtype: SendForSignaturePolicyChangedDetails
        """
        if not self.is_send_for_signature_policy_changed_details():
            raise AttributeError("tag 'send_for_signature_policy_changed_details' not set")
        return self._value

    def get_sharing_change_folder_join_policy_details(self):
        """
        Only call this if :meth:`is_sharing_change_folder_join_policy_details` is true.

        :rtype: SharingChangeFolderJoinPolicyDetails
        """
        if not self.is_sharing_change_folder_join_policy_details():
            raise AttributeError("tag 'sharing_change_folder_join_policy_details' not set")
        return self._value

    def get_sharing_change_link_allow_change_expiration_policy_details(self):
        """
        Only call this if :meth:`is_sharing_change_link_allow_change_expiration_policy_details` is true.

        :rtype: SharingChangeLinkAllowChangeExpirationPolicyDetails
        """
        if not self.is_sharing_change_link_allow_change_expiration_policy_details():
            raise AttributeError("tag 'sharing_change_link_allow_change_expiration_policy_details' not set")
        return self._value

    def get_sharing_change_link_default_expiration_policy_details(self):
        """
        Only call this if :meth:`is_sharing_change_link_default_expiration_policy_details` is true.

        :rtype: SharingChangeLinkDefaultExpirationPolicyDetails
        """
        if not self.is_sharing_change_link_default_expiration_policy_details():
            raise AttributeError("tag 'sharing_change_link_default_expiration_policy_details' not set")
        return self._value

    def get_sharing_change_link_enforce_password_policy_details(self):
        """
        Only call this if :meth:`is_sharing_change_link_enforce_password_policy_details` is true.

        :rtype: SharingChangeLinkEnforcePasswordPolicyDetails
        """
        if not self.is_sharing_change_link_enforce_password_policy_details():
            raise AttributeError("tag 'sharing_change_link_enforce_password_policy_details' not set")
        return self._value

    def get_sharing_change_link_policy_details(self):
        """
        Only call this if :meth:`is_sharing_change_link_policy_details` is true.

        :rtype: SharingChangeLinkPolicyDetails
        """
        if not self.is_sharing_change_link_policy_details():
            raise AttributeError("tag 'sharing_change_link_policy_details' not set")
        return self._value

    def get_sharing_change_member_policy_details(self):
        """
        Only call this if :meth:`is_sharing_change_member_policy_details` is true.

        :rtype: SharingChangeMemberPolicyDetails
        """
        if not self.is_sharing_change_member_policy_details():
            raise AttributeError("tag 'sharing_change_member_policy_details' not set")
        return self._value

    def get_showcase_change_download_policy_details(self):
        """
        Only call this if :meth:`is_showcase_change_download_policy_details` is true.

        :rtype: ShowcaseChangeDownloadPolicyDetails
        """
        if not self.is_showcase_change_download_policy_details():
            raise AttributeError("tag 'showcase_change_download_policy_details' not set")
        return self._value

    def get_showcase_change_enabled_policy_details(self):
        """
        Only call this if :meth:`is_showcase_change_enabled_policy_details` is true.

        :rtype: ShowcaseChangeEnabledPolicyDetails
        """
        if not self.is_showcase_change_enabled_policy_details():
            raise AttributeError("tag 'showcase_change_enabled_policy_details' not set")
        return self._value

    def get_showcase_change_external_sharing_policy_details(self):
        """
        Only call this if :meth:`is_showcase_change_external_sharing_policy_details` is true.

        :rtype: ShowcaseChangeExternalSharingPolicyDetails
        """
        if not self.is_showcase_change_external_sharing_policy_details():
            raise AttributeError("tag 'showcase_change_external_sharing_policy_details' not set")
        return self._value

    def get_smarter_smart_sync_policy_changed_details(self):
        """
        Only call this if :meth:`is_smarter_smart_sync_policy_changed_details` is true.

        :rtype: SmarterSmartSyncPolicyChangedDetails
        """
        if not self.is_smarter_smart_sync_policy_changed_details():
            raise AttributeError("tag 'smarter_smart_sync_policy_changed_details' not set")
        return self._value

    def get_smart_sync_change_policy_details(self):
        """
        Only call this if :meth:`is_smart_sync_change_policy_details` is true.

        :rtype: SmartSyncChangePolicyDetails
        """
        if not self.is_smart_sync_change_policy_details():
            raise AttributeError("tag 'smart_sync_change_policy_details' not set")
        return self._value

    def get_smart_sync_not_opt_out_details(self):
        """
        Only call this if :meth:`is_smart_sync_not_opt_out_details` is true.

        :rtype: SmartSyncNotOptOutDetails
        """
        if not self.is_smart_sync_not_opt_out_details():
            raise AttributeError("tag 'smart_sync_not_opt_out_details' not set")
        return self._value

    def get_smart_sync_opt_out_details(self):
        """
        Only call this if :meth:`is_smart_sync_opt_out_details` is true.

        :rtype: SmartSyncOptOutDetails
        """
        if not self.is_smart_sync_opt_out_details():
            raise AttributeError("tag 'smart_sync_opt_out_details' not set")
        return self._value

    def get_sso_change_policy_details(self):
        """
        Only call this if :meth:`is_sso_change_policy_details` is true.

        :rtype: SsoChangePolicyDetails
        """
        if not self.is_sso_change_policy_details():
            raise AttributeError("tag 'sso_change_policy_details' not set")
        return self._value

    def get_team_branding_policy_changed_details(self):
        """
        Only call this if :meth:`is_team_branding_policy_changed_details` is true.

        :rtype: TeamBrandingPolicyChangedDetails
        """
        if not self.is_team_branding_policy_changed_details():
            raise AttributeError("tag 'team_branding_policy_changed_details' not set")
        return self._value

    def get_team_extensions_policy_changed_details(self):
        """
        Only call this if :meth:`is_team_extensions_policy_changed_details` is true.

        :rtype: TeamExtensionsPolicyChangedDetails
        """
        if not self.is_team_extensions_policy_changed_details():
            raise AttributeError("tag 'team_extensions_policy_changed_details' not set")
        return self._value

    def get_team_selective_sync_policy_changed_details(self):
        """
        Only call this if :meth:`is_team_selective_sync_policy_changed_details` is true.

        :rtype: TeamSelectiveSyncPolicyChangedDetails
        """
        if not self.is_team_selective_sync_policy_changed_details():
            raise AttributeError("tag 'team_selective_sync_policy_changed_details' not set")
        return self._value

    def get_team_sharing_whitelist_subjects_changed_details(self):
        """
        Only call this if :meth:`is_team_sharing_whitelist_subjects_changed_details` is true.

        :rtype: TeamSharingWhitelistSubjectsChangedDetails
        """
        if not self.is_team_sharing_whitelist_subjects_changed_details():
            raise AttributeError("tag 'team_sharing_whitelist_subjects_changed_details' not set")
        return self._value

    def get_tfa_add_exception_details(self):
        """
        Only call this if :meth:`is_tfa_add_exception_details` is true.

        :rtype: TfaAddExceptionDetails
        """
        if not self.is_tfa_add_exception_details():
            raise AttributeError("tag 'tfa_add_exception_details' not set")
        return self._value

    def get_tfa_change_policy_details(self):
        """
        Only call this if :meth:`is_tfa_change_policy_details` is true.

        :rtype: TfaChangePolicyDetails
        """
        if not self.is_tfa_change_policy_details():
            raise AttributeError("tag 'tfa_change_policy_details' not set")
        return self._value

    def get_tfa_remove_exception_details(self):
        """
        Only call this if :meth:`is_tfa_remove_exception_details` is true.

        :rtype: TfaRemoveExceptionDetails
        """
        if not self.is_tfa_remove_exception_details():
            raise AttributeError("tag 'tfa_remove_exception_details' not set")
        return self._value

    def get_two_account_change_policy_details(self):
        """
        Only call this if :meth:`is_two_account_change_policy_details` is true.

        :rtype: TwoAccountChangePolicyDetails
        """
        if not self.is_two_account_change_policy_details():
            raise AttributeError("tag 'two_account_change_policy_details' not set")
        return self._value

    def get_viewer_info_policy_changed_details(self):
        """
        Only call this if :meth:`is_viewer_info_policy_changed_details` is true.

        :rtype: ViewerInfoPolicyChangedDetails
        """
        if not self.is_viewer_info_policy_changed_details():
            raise AttributeError("tag 'viewer_info_policy_changed_details' not set")
        return self._value

    def get_watermarking_policy_changed_details(self):
        """
        Only call this if :meth:`is_watermarking_policy_changed_details` is true.

        :rtype: WatermarkingPolicyChangedDetails
        """
        if not self.is_watermarking_policy_changed_details():
            raise AttributeError("tag 'watermarking_policy_changed_details' not set")
        return self._value

    def get_web_sessions_change_active_session_limit_details(self):
        """
        Only call this if :meth:`is_web_sessions_change_active_session_limit_details` is true.

        :rtype: WebSessionsChangeActiveSessionLimitDetails
        """
        if not self.is_web_sessions_change_active_session_limit_details():
            raise AttributeError("tag 'web_sessions_change_active_session_limit_details' not set")
        return self._value

    def get_web_sessions_change_fixed_length_policy_details(self):
        """
        Only call this if :meth:`is_web_sessions_change_fixed_length_policy_details` is true.

        :rtype: WebSessionsChangeFixedLengthPolicyDetails
        """
        if not self.is_web_sessions_change_fixed_length_policy_details():
            raise AttributeError("tag 'web_sessions_change_fixed_length_policy_details' not set")
        return self._value

    def get_web_sessions_change_idle_length_policy_details(self):
        """
        Only call this if :meth:`is_web_sessions_change_idle_length_policy_details` is true.

        :rtype: WebSessionsChangeIdleLengthPolicyDetails
        """
        if not self.is_web_sessions_change_idle_length_policy_details():
            raise AttributeError("tag 'web_sessions_change_idle_length_policy_details' not set")
        return self._value

    def get_data_residency_migration_request_successful_details(self):
        """
        Only call this if :meth:`is_data_residency_migration_request_successful_details` is true.

        :rtype: DataResidencyMigrationRequestSuccessfulDetails
        """
        if not self.is_data_residency_migration_request_successful_details():
            raise AttributeError("tag 'data_residency_migration_request_successful_details' not set")
        return self._value

    def get_data_residency_migration_request_unsuccessful_details(self):
        """
        Only call this if :meth:`is_data_residency_migration_request_unsuccessful_details` is true.

        :rtype: DataResidencyMigrationRequestUnsuccessfulDetails
        """
        if not self.is_data_residency_migration_request_unsuccessful_details():
            raise AttributeError("tag 'data_residency_migration_request_unsuccessful_details' not set")
        return self._value

    def get_team_merge_from_details(self):
        """
        Only call this if :meth:`is_team_merge_from_details` is true.

        :rtype: TeamMergeFromDetails
        """
        if not self.is_team_merge_from_details():
            raise AttributeError("tag 'team_merge_from_details' not set")
        return self._value

    def get_team_merge_to_details(self):
        """
        Only call this if :meth:`is_team_merge_to_details` is true.

        :rtype: TeamMergeToDetails
        """
        if not self.is_team_merge_to_details():
            raise AttributeError("tag 'team_merge_to_details' not set")
        return self._value

    def get_team_profile_add_background_details(self):
        """
        Only call this if :meth:`is_team_profile_add_background_details` is true.

        :rtype: TeamProfileAddBackgroundDetails
        """
        if not self.is_team_profile_add_background_details():
            raise AttributeError("tag 'team_profile_add_background_details' not set")
        return self._value

    def get_team_profile_add_logo_details(self):
        """
        Only call this if :meth:`is_team_profile_add_logo_details` is true.

        :rtype: TeamProfileAddLogoDetails
        """
        if not self.is_team_profile_add_logo_details():
            raise AttributeError("tag 'team_profile_add_logo_details' not set")
        return self._value

    def get_team_profile_change_background_details(self):
        """
        Only call this if :meth:`is_team_profile_change_background_details` is true.

        :rtype: TeamProfileChangeBackgroundDetails
        """
        if not self.is_team_profile_change_background_details():
            raise AttributeError("tag 'team_profile_change_background_details' not set")
        return self._value

    def get_team_profile_change_default_language_details(self):
        """
        Only call this if :meth:`is_team_profile_change_default_language_details` is true.

        :rtype: TeamProfileChangeDefaultLanguageDetails
        """
        if not self.is_team_profile_change_default_language_details():
            raise AttributeError("tag 'team_profile_change_default_language_details' not set")
        return self._value

    def get_team_profile_change_logo_details(self):
        """
        Only call this if :meth:`is_team_profile_change_logo_details` is true.

        :rtype: TeamProfileChangeLogoDetails
        """
        if not self.is_team_profile_change_logo_details():
            raise AttributeError("tag 'team_profile_change_logo_details' not set")
        return self._value

    def get_team_profile_change_name_details(self):
        """
        Only call this if :meth:`is_team_profile_change_name_details` is true.

        :rtype: TeamProfileChangeNameDetails
        """
        if not self.is_team_profile_change_name_details():
            raise AttributeError("tag 'team_profile_change_name_details' not set")
        return self._value

    def get_team_profile_remove_background_details(self):
        """
        Only call this if :meth:`is_team_profile_remove_background_details` is true.

        :rtype: TeamProfileRemoveBackgroundDetails
        """
        if not self.is_team_profile_remove_background_details():
            raise AttributeError("tag 'team_profile_remove_background_details' not set")
        return self._value

    def get_team_profile_remove_logo_details(self):
        """
        Only call this if :meth:`is_team_profile_remove_logo_details` is true.

        :rtype: TeamProfileRemoveLogoDetails
        """
        if not self.is_team_profile_remove_logo_details():
            raise AttributeError("tag 'team_profile_remove_logo_details' not set")
        return self._value

    def get_tfa_add_backup_phone_details(self):
        """
        Only call this if :meth:`is_tfa_add_backup_phone_details` is true.

        :rtype: TfaAddBackupPhoneDetails
        """
        if not self.is_tfa_add_backup_phone_details():
            raise AttributeError("tag 'tfa_add_backup_phone_details' not set")
        return self._value

    def get_tfa_add_security_key_details(self):
        """
        Only call this if :meth:`is_tfa_add_security_key_details` is true.

        :rtype: TfaAddSecurityKeyDetails
        """
        if not self.is_tfa_add_security_key_details():
            raise AttributeError("tag 'tfa_add_security_key_details' not set")
        return self._value

    def get_tfa_change_backup_phone_details(self):
        """
        Only call this if :meth:`is_tfa_change_backup_phone_details` is true.

        :rtype: TfaChangeBackupPhoneDetails
        """
        if not self.is_tfa_change_backup_phone_details():
            raise AttributeError("tag 'tfa_change_backup_phone_details' not set")
        return self._value

    def get_tfa_change_status_details(self):
        """
        Only call this if :meth:`is_tfa_change_status_details` is true.

        :rtype: TfaChangeStatusDetails
        """
        if not self.is_tfa_change_status_details():
            raise AttributeError("tag 'tfa_change_status_details' not set")
        return self._value

    def get_tfa_remove_backup_phone_details(self):
        """
        Only call this if :meth:`is_tfa_remove_backup_phone_details` is true.

        :rtype: TfaRemoveBackupPhoneDetails
        """
        if not self.is_tfa_remove_backup_phone_details():
            raise AttributeError("tag 'tfa_remove_backup_phone_details' not set")
        return self._value

    def get_tfa_remove_security_key_details(self):
        """
        Only call this if :meth:`is_tfa_remove_security_key_details` is true.

        :rtype: TfaRemoveSecurityKeyDetails
        """
        if not self.is_tfa_remove_security_key_details():
            raise AttributeError("tag 'tfa_remove_security_key_details' not set")
        return self._value

    def get_tfa_reset_details(self):
        """
        Only call this if :meth:`is_tfa_reset_details` is true.

        :rtype: TfaResetDetails
        """
        if not self.is_tfa_reset_details():
            raise AttributeError("tag 'tfa_reset_details' not set")
        return self._value

    def get_changed_enterprise_admin_role_details(self):
        """
        Only call this if :meth:`is_changed_enterprise_admin_role_details` is true.

        :rtype: ChangedEnterpriseAdminRoleDetails
        """
        if not self.is_changed_enterprise_admin_role_details():
            raise AttributeError("tag 'changed_enterprise_admin_role_details' not set")
        return self._value

    def get_changed_enterprise_connected_team_status_details(self):
        """
        Only call this if :meth:`is_changed_enterprise_connected_team_status_details` is true.

        :rtype: ChangedEnterpriseConnectedTeamStatusDetails
        """
        if not self.is_changed_enterprise_connected_team_status_details():
            raise AttributeError("tag 'changed_enterprise_connected_team_status_details' not set")
        return self._value

    def get_ended_enterprise_admin_session_details(self):
        """
        Only call this if :meth:`is_ended_enterprise_admin_session_details` is true.

        :rtype: EndedEnterpriseAdminSessionDetails
        """
        if not self.is_ended_enterprise_admin_session_details():
            raise AttributeError("tag 'ended_enterprise_admin_session_details' not set")
        return self._value

    def get_ended_enterprise_admin_session_deprecated_details(self):
        """
        Only call this if :meth:`is_ended_enterprise_admin_session_deprecated_details` is true.

        :rtype: EndedEnterpriseAdminSessionDeprecatedDetails
        """
        if not self.is_ended_enterprise_admin_session_deprecated_details():
            raise AttributeError("tag 'ended_enterprise_admin_session_deprecated_details' not set")
        return self._value

    def get_enterprise_settings_locking_details(self):
        """
        Only call this if :meth:`is_enterprise_settings_locking_details` is true.

        :rtype: EnterpriseSettingsLockingDetails
        """
        if not self.is_enterprise_settings_locking_details():
            raise AttributeError("tag 'enterprise_settings_locking_details' not set")
        return self._value

    def get_guest_admin_change_status_details(self):
        """
        Only call this if :meth:`is_guest_admin_change_status_details` is true.

        :rtype: GuestAdminChangeStatusDetails
        """
        if not self.is_guest_admin_change_status_details():
            raise AttributeError("tag 'guest_admin_change_status_details' not set")
        return self._value

    def get_started_enterprise_admin_session_details(self):
        """
        Only call this if :meth:`is_started_enterprise_admin_session_details` is true.

        :rtype: StartedEnterpriseAdminSessionDetails
        """
        if not self.is_started_enterprise_admin_session_details():
            raise AttributeError("tag 'started_enterprise_admin_session_details' not set")
        return self._value

    def get_team_merge_request_accepted_details(self):
        """
        Only call this if :meth:`is_team_merge_request_accepted_details` is true.

        :rtype: TeamMergeRequestAcceptedDetails
        """
        if not self.is_team_merge_request_accepted_details():
            raise AttributeError("tag 'team_merge_request_accepted_details' not set")
        return self._value

    def get_team_merge_request_accepted_shown_to_primary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_accepted_shown_to_primary_team_details` is true.

        :rtype: TeamMergeRequestAcceptedShownToPrimaryTeamDetails
        """
        if not self.is_team_merge_request_accepted_shown_to_primary_team_details():
            raise AttributeError("tag 'team_merge_request_accepted_shown_to_primary_team_details' not set")
        return self._value

    def get_team_merge_request_accepted_shown_to_secondary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_accepted_shown_to_secondary_team_details` is true.

        :rtype: TeamMergeRequestAcceptedShownToSecondaryTeamDetails
        """
        if not self.is_team_merge_request_accepted_shown_to_secondary_team_details():
            raise AttributeError("tag 'team_merge_request_accepted_shown_to_secondary_team_details' not set")
        return self._value

    def get_team_merge_request_auto_canceled_details(self):
        """
        Only call this if :meth:`is_team_merge_request_auto_canceled_details` is true.

        :rtype: TeamMergeRequestAutoCanceledDetails
        """
        if not self.is_team_merge_request_auto_canceled_details():
            raise AttributeError("tag 'team_merge_request_auto_canceled_details' not set")
        return self._value

    def get_team_merge_request_canceled_details(self):
        """
        Only call this if :meth:`is_team_merge_request_canceled_details` is true.

        :rtype: TeamMergeRequestCanceledDetails
        """
        if not self.is_team_merge_request_canceled_details():
            raise AttributeError("tag 'team_merge_request_canceled_details' not set")
        return self._value

    def get_team_merge_request_canceled_shown_to_primary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_canceled_shown_to_primary_team_details` is true.

        :rtype: TeamMergeRequestCanceledShownToPrimaryTeamDetails
        """
        if not self.is_team_merge_request_canceled_shown_to_primary_team_details():
            raise AttributeError("tag 'team_merge_request_canceled_shown_to_primary_team_details' not set")
        return self._value

    def get_team_merge_request_canceled_shown_to_secondary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_canceled_shown_to_secondary_team_details` is true.

        :rtype: TeamMergeRequestCanceledShownToSecondaryTeamDetails
        """
        if not self.is_team_merge_request_canceled_shown_to_secondary_team_details():
            raise AttributeError("tag 'team_merge_request_canceled_shown_to_secondary_team_details' not set")
        return self._value

    def get_team_merge_request_expired_details(self):
        """
        Only call this if :meth:`is_team_merge_request_expired_details` is true.

        :rtype: TeamMergeRequestExpiredDetails
        """
        if not self.is_team_merge_request_expired_details():
            raise AttributeError("tag 'team_merge_request_expired_details' not set")
        return self._value

    def get_team_merge_request_expired_shown_to_primary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_expired_shown_to_primary_team_details` is true.

        :rtype: TeamMergeRequestExpiredShownToPrimaryTeamDetails
        """
        if not self.is_team_merge_request_expired_shown_to_primary_team_details():
            raise AttributeError("tag 'team_merge_request_expired_shown_to_primary_team_details' not set")
        return self._value

    def get_team_merge_request_expired_shown_to_secondary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_expired_shown_to_secondary_team_details` is true.

        :rtype: TeamMergeRequestExpiredShownToSecondaryTeamDetails
        """
        if not self.is_team_merge_request_expired_shown_to_secondary_team_details():
            raise AttributeError("tag 'team_merge_request_expired_shown_to_secondary_team_details' not set")
        return self._value

    def get_team_merge_request_rejected_shown_to_primary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_rejected_shown_to_primary_team_details` is true.

        :rtype: TeamMergeRequestRejectedShownToPrimaryTeamDetails
        """
        if not self.is_team_merge_request_rejected_shown_to_primary_team_details():
            raise AttributeError("tag 'team_merge_request_rejected_shown_to_primary_team_details' not set")
        return self._value

    def get_team_merge_request_rejected_shown_to_secondary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_rejected_shown_to_secondary_team_details` is true.

        :rtype: TeamMergeRequestRejectedShownToSecondaryTeamDetails
        """
        if not self.is_team_merge_request_rejected_shown_to_secondary_team_details():
            raise AttributeError("tag 'team_merge_request_rejected_shown_to_secondary_team_details' not set")
        return self._value

    def get_team_merge_request_reminder_details(self):
        """
        Only call this if :meth:`is_team_merge_request_reminder_details` is true.

        :rtype: TeamMergeRequestReminderDetails
        """
        if not self.is_team_merge_request_reminder_details():
            raise AttributeError("tag 'team_merge_request_reminder_details' not set")
        return self._value

    def get_team_merge_request_reminder_shown_to_primary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_reminder_shown_to_primary_team_details` is true.

        :rtype: TeamMergeRequestReminderShownToPrimaryTeamDetails
        """
        if not self.is_team_merge_request_reminder_shown_to_primary_team_details():
            raise AttributeError("tag 'team_merge_request_reminder_shown_to_primary_team_details' not set")
        return self._value

    def get_team_merge_request_reminder_shown_to_secondary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_reminder_shown_to_secondary_team_details` is true.

        :rtype: TeamMergeRequestReminderShownToSecondaryTeamDetails
        """
        if not self.is_team_merge_request_reminder_shown_to_secondary_team_details():
            raise AttributeError("tag 'team_merge_request_reminder_shown_to_secondary_team_details' not set")
        return self._value

    def get_team_merge_request_revoked_details(self):
        """
        Only call this if :meth:`is_team_merge_request_revoked_details` is true.

        :rtype: TeamMergeRequestRevokedDetails
        """
        if not self.is_team_merge_request_revoked_details():
            raise AttributeError("tag 'team_merge_request_revoked_details' not set")
        return self._value

    def get_team_merge_request_sent_shown_to_primary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_sent_shown_to_primary_team_details` is true.

        :rtype: TeamMergeRequestSentShownToPrimaryTeamDetails
        """
        if not self.is_team_merge_request_sent_shown_to_primary_team_details():
            raise AttributeError("tag 'team_merge_request_sent_shown_to_primary_team_details' not set")
        return self._value

    def get_team_merge_request_sent_shown_to_secondary_team_details(self):
        """
        Only call this if :meth:`is_team_merge_request_sent_shown_to_secondary_team_details` is true.

        :rtype: TeamMergeRequestSentShownToSecondaryTeamDetails
        """
        if not self.is_team_merge_request_sent_shown_to_secondary_team_details():
            raise AttributeError("tag 'team_merge_request_sent_shown_to_secondary_team_details' not set")
        return self._value

    def get_missing_details(self):
        """
        Hints that this event was returned with missing details due to an
        internal error.

        Only call this if :meth:`is_missing_details` is true.

        :rtype: MissingDetails
        """
        if not self.is_missing_details():
            raise AttributeError("tag 'missing_details' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EventDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

EventDetails_validator = bv.Union(EventDetails)

class EventType(bb.Union):
    """
    The type of the event with description.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar AdminAlertingAlertStateChangedType
        EventType.admin_alerting_alert_state_changed: (admin_alerting) Changed
        an alert state
    :ivar AdminAlertingChangedAlertConfigType
        EventType.admin_alerting_changed_alert_config: (admin_alerting) Changed
        an alert setting
    :ivar AdminAlertingTriggeredAlertType
        EventType.admin_alerting_triggered_alert: (admin_alerting) Triggered
        security alert
    :ivar AppBlockedByPermissionsType EventType.app_blocked_by_permissions:
        (apps) Failed to connect app for member
    :ivar AppLinkTeamType EventType.app_link_team: (apps) Linked app for team
    :ivar AppLinkUserType EventType.app_link_user: (apps) Linked app for member
    :ivar AppUnlinkTeamType EventType.app_unlink_team: (apps) Unlinked app for
        team
    :ivar AppUnlinkUserType EventType.app_unlink_user: (apps) Unlinked app for
        member
    :ivar IntegrationConnectedType EventType.integration_connected: (apps)
        Connected integration for member
    :ivar IntegrationDisconnectedType EventType.integration_disconnected: (apps)
        Disconnected integration for member
    :ivar FileAddCommentType EventType.file_add_comment: (comments) Added file
        comment
    :ivar FileChangeCommentSubscriptionType
        EventType.file_change_comment_subscription: (comments) Subscribed to or
        unsubscribed from comment notifications for file
    :ivar FileDeleteCommentType EventType.file_delete_comment: (comments)
        Deleted file comment
    :ivar FileEditCommentType EventType.file_edit_comment: (comments) Edited
        file comment
    :ivar FileLikeCommentType EventType.file_like_comment: (comments) Liked file
        comment (deprecated, no longer logged)
    :ivar FileResolveCommentType EventType.file_resolve_comment: (comments)
        Resolved file comment
    :ivar FileUnlikeCommentType EventType.file_unlike_comment: (comments)
        Unliked file comment (deprecated, no longer logged)
    :ivar FileUnresolveCommentType EventType.file_unresolve_comment: (comments)
        Unresolved file comment
    :ivar GovernancePolicyAddFoldersType
        EventType.governance_policy_add_folders: (data_governance) Added folders
        to policy
    :ivar GovernancePolicyAddFolderFailedType
        EventType.governance_policy_add_folder_failed: (data_governance)
        Couldn't add a folder to a policy
    :ivar GovernancePolicyContentDisposedType
        EventType.governance_policy_content_disposed: (data_governance) Content
        disposed
    :ivar GovernancePolicyCreateType EventType.governance_policy_create:
        (data_governance) Activated a new policy
    :ivar GovernancePolicyDeleteType EventType.governance_policy_delete:
        (data_governance) Deleted a policy
    :ivar GovernancePolicyEditDetailsType
        EventType.governance_policy_edit_details: (data_governance) Edited
        policy
    :ivar GovernancePolicyEditDurationType
        EventType.governance_policy_edit_duration: (data_governance) Changed
        policy duration
    :ivar GovernancePolicyExportCreatedType
        EventType.governance_policy_export_created: (data_governance) Created a
        policy download
    :ivar GovernancePolicyExportRemovedType
        EventType.governance_policy_export_removed: (data_governance) Removed a
        policy download
    :ivar GovernancePolicyRemoveFoldersType
        EventType.governance_policy_remove_folders: (data_governance) Removed
        folders from policy
    :ivar GovernancePolicyReportCreatedType
        EventType.governance_policy_report_created: (data_governance) Created a
        summary report for a policy
    :ivar GovernancePolicyZipPartDownloadedType
        EventType.governance_policy_zip_part_downloaded: (data_governance)
        Downloaded content from a policy
    :ivar LegalHoldsActivateAHoldType EventType.legal_holds_activate_a_hold:
        (data_governance) Activated a hold
    :ivar LegalHoldsAddMembersType EventType.legal_holds_add_members:
        (data_governance) Added members to a hold
    :ivar LegalHoldsChangeHoldDetailsType
        EventType.legal_holds_change_hold_details: (data_governance) Edited
        details for a hold
    :ivar LegalHoldsChangeHoldNameType EventType.legal_holds_change_hold_name:
        (data_governance) Renamed a hold
    :ivar LegalHoldsExportAHoldType EventType.legal_holds_export_a_hold:
        (data_governance) Exported hold
    :ivar LegalHoldsExportCancelledType EventType.legal_holds_export_cancelled:
        (data_governance) Canceled export for a hold
    :ivar LegalHoldsExportDownloadedType
        EventType.legal_holds_export_downloaded: (data_governance) Downloaded
        export for a hold
    :ivar LegalHoldsExportRemovedType EventType.legal_holds_export_removed:
        (data_governance) Removed export for a hold
    :ivar LegalHoldsReleaseAHoldType EventType.legal_holds_release_a_hold:
        (data_governance) Released a hold
    :ivar LegalHoldsRemoveMembersType EventType.legal_holds_remove_members:
        (data_governance) Removed members from a hold
    :ivar LegalHoldsReportAHoldType EventType.legal_holds_report_a_hold:
        (data_governance) Created a summary report for a hold
    :ivar DeviceChangeIpDesktopType EventType.device_change_ip_desktop:
        (devices) Changed IP address associated with active desktop session
    :ivar DeviceChangeIpMobileType EventType.device_change_ip_mobile: (devices)
        Changed IP address associated with active mobile session
    :ivar DeviceChangeIpWebType EventType.device_change_ip_web: (devices)
        Changed IP address associated with active web session
    :ivar DeviceDeleteOnUnlinkFailType EventType.device_delete_on_unlink_fail:
        (devices) Failed to delete all files from unlinked device
    :ivar DeviceDeleteOnUnlinkSuccessType
        EventType.device_delete_on_unlink_success: (devices) Deleted all files
        from unlinked device
    :ivar DeviceLinkFailType EventType.device_link_fail: (devices) Failed to
        link device
    :ivar DeviceLinkSuccessType EventType.device_link_success: (devices) Linked
        device
    :ivar DeviceManagementDisabledType EventType.device_management_disabled:
        (devices) Disabled device management (deprecated, no longer logged)
    :ivar DeviceManagementEnabledType EventType.device_management_enabled:
        (devices) Enabled device management (deprecated, no longer logged)
    :ivar DeviceSyncBackupStatusChangedType
        EventType.device_sync_backup_status_changed: (devices) Enabled/disabled
        backup for computer
    :ivar DeviceUnlinkType EventType.device_unlink: (devices) Disconnected
        device
    :ivar DropboxPasswordsExportedType EventType.dropbox_passwords_exported:
        (devices) Exported passwords
    :ivar DropboxPasswordsNewDeviceEnrolledType
        EventType.dropbox_passwords_new_device_enrolled: (devices) Enrolled new
        Dropbox Passwords device
    :ivar EmmRefreshAuthTokenType EventType.emm_refresh_auth_token: (devices)
        Refreshed auth token used for setting up EMM
    :ivar ExternalDriveBackupEligibilityStatusCheckedType
        EventType.external_drive_backup_eligibility_status_checked: (devices)
        Checked external drive backup eligibility status
    :ivar ExternalDriveBackupStatusChangedType
        EventType.external_drive_backup_status_changed: (devices) Modified
        external drive backup
    :ivar AccountCaptureChangeAvailabilityType
        EventType.account_capture_change_availability: (domains) Granted/revoked
        option to enable account capture on team domains
    :ivar AccountCaptureMigrateAccountType
        EventType.account_capture_migrate_account: (domains) Account-captured
        user migrated account to team
    :ivar AccountCaptureNotificationEmailsSentType
        EventType.account_capture_notification_emails_sent: (domains) Sent
        account capture email to all unmanaged members
    :ivar AccountCaptureRelinquishAccountType
        EventType.account_capture_relinquish_account: (domains) Account-captured
        user changed account email to personal email
    :ivar DisabledDomainInvitesType EventType.disabled_domain_invites: (domains)
        Disabled domain invites (deprecated, no longer logged)
    :ivar DomainInvitesApproveRequestToJoinTeamType
        EventType.domain_invites_approve_request_to_join_team: (domains)
        Approved user's request to join team
    :ivar DomainInvitesDeclineRequestToJoinTeamType
        EventType.domain_invites_decline_request_to_join_team: (domains)
        Declined user's request to join team
    :ivar DomainInvitesEmailExistingUsersType
        EventType.domain_invites_email_existing_users: (domains) Sent domain
        invites to existing domain accounts (deprecated, no longer logged)
    :ivar DomainInvitesRequestToJoinTeamType
        EventType.domain_invites_request_to_join_team: (domains) Requested to
        join team
    :ivar DomainInvitesSetInviteNewUserPrefToNoType
        EventType.domain_invites_set_invite_new_user_pref_to_no: (domains)
        Disabled "Automatically invite new users" (deprecated, no longer logged)
    :ivar DomainInvitesSetInviteNewUserPrefToYesType
        EventType.domain_invites_set_invite_new_user_pref_to_yes: (domains)
        Enabled "Automatically invite new users" (deprecated, no longer logged)
    :ivar DomainVerificationAddDomainFailType
        EventType.domain_verification_add_domain_fail: (domains) Failed to
        verify team domain
    :ivar DomainVerificationAddDomainSuccessType
        EventType.domain_verification_add_domain_success: (domains) Verified
        team domain
    :ivar DomainVerificationRemoveDomainType
        EventType.domain_verification_remove_domain: (domains) Removed domain
        from list of verified team domains
    :ivar EnabledDomainInvitesType EventType.enabled_domain_invites: (domains)
        Enabled domain invites (deprecated, no longer logged)
    :ivar ApplyNamingConventionType EventType.apply_naming_convention:
        (file_operations) Applied naming convention
    :ivar CreateFolderType EventType.create_folder: (file_operations) Created
        folders (deprecated, no longer logged)
    :ivar FileAddType EventType.file_add: (file_operations) Added files and/or
        folders
    :ivar FileCopyType EventType.file_copy: (file_operations) Copied files
        and/or folders
    :ivar FileDeleteType EventType.file_delete: (file_operations) Deleted files
        and/or folders
    :ivar FileDownloadType EventType.file_download: (file_operations) Downloaded
        files and/or folders
    :ivar FileEditType EventType.file_edit: (file_operations) Edited files
    :ivar FileGetCopyReferenceType EventType.file_get_copy_reference:
        (file_operations) Created copy reference to file/folder
    :ivar FileLockingLockStatusChangedType
        EventType.file_locking_lock_status_changed: (file_operations)
        Locked/unlocked editing for a file
    :ivar FileMoveType EventType.file_move: (file_operations) Moved files and/or
        folders
    :ivar FilePermanentlyDeleteType EventType.file_permanently_delete:
        (file_operations) Permanently deleted files and/or folders
    :ivar FilePreviewType EventType.file_preview: (file_operations) Previewed
        files and/or folders
    :ivar FileRenameType EventType.file_rename: (file_operations) Renamed files
        and/or folders
    :ivar FileRestoreType EventType.file_restore: (file_operations) Restored
        deleted files and/or folders
    :ivar FileRevertType EventType.file_revert: (file_operations) Reverted files
        to previous version
    :ivar FileRollbackChangesType EventType.file_rollback_changes:
        (file_operations) Rolled back file actions
    :ivar FileSaveCopyReferenceType EventType.file_save_copy_reference:
        (file_operations) Saved file/folder using copy reference
    :ivar FolderOverviewDescriptionChangedType
        EventType.folder_overview_description_changed: (file_operations) Updated
        folder overview
    :ivar FolderOverviewItemPinnedType EventType.folder_overview_item_pinned:
        (file_operations) Pinned item to folder overview
    :ivar FolderOverviewItemUnpinnedType
        EventType.folder_overview_item_unpinned: (file_operations) Unpinned item
        from folder overview
    :ivar ObjectLabelAddedType EventType.object_label_added: (file_operations)
        Added a label
    :ivar ObjectLabelRemovedType EventType.object_label_removed:
        (file_operations) Removed a label
    :ivar ObjectLabelUpdatedValueType EventType.object_label_updated_value:
        (file_operations) Updated a label's value
    :ivar OrganizeFolderWithTidyType EventType.organize_folder_with_tidy:
        (file_operations) Organized a folder with multi-file organize
    :ivar RewindFolderType EventType.rewind_folder: (file_operations) Rewound a
        folder
    :ivar UndoNamingConventionType EventType.undo_naming_convention:
        (file_operations) Reverted naming convention
    :ivar UndoOrganizeFolderWithTidyType
        EventType.undo_organize_folder_with_tidy: (file_operations) Removed
        multi-file organize
    :ivar UserTagsAddedType EventType.user_tags_added: (file_operations) Tagged
        a file
    :ivar UserTagsRemovedType EventType.user_tags_removed: (file_operations)
        Removed tags
    :ivar EmailIngestReceiveFileType EventType.email_ingest_receive_file:
        (file_requests) Received files via Email to Dropbox
    :ivar FileRequestChangeType EventType.file_request_change: (file_requests)
        Changed file request
    :ivar FileRequestCloseType EventType.file_request_close: (file_requests)
        Closed file request
    :ivar FileRequestCreateType EventType.file_request_create: (file_requests)
        Created file request
    :ivar FileRequestDeleteType EventType.file_request_delete: (file_requests)
        Delete file request
    :ivar FileRequestReceiveFileType EventType.file_request_receive_file:
        (file_requests) Received files for file request
    :ivar GroupAddExternalIdType EventType.group_add_external_id: (groups) Added
        external ID for group
    :ivar GroupAddMemberType EventType.group_add_member: (groups) Added team
        members to group
    :ivar GroupChangeExternalIdType EventType.group_change_external_id: (groups)
        Changed external ID for group
    :ivar GroupChangeManagementTypeType EventType.group_change_management_type:
        (groups) Changed group management type
    :ivar GroupChangeMemberRoleType EventType.group_change_member_role: (groups)
        Changed manager permissions of group member
    :ivar GroupCreateType EventType.group_create: (groups) Created group
    :ivar GroupDeleteType EventType.group_delete: (groups) Deleted group
    :ivar GroupDescriptionUpdatedType EventType.group_description_updated:
        (groups) Updated group (deprecated, no longer logged)
    :ivar GroupJoinPolicyUpdatedType EventType.group_join_policy_updated:
        (groups) Updated group join policy (deprecated, no longer logged)
    :ivar GroupMovedType EventType.group_moved: (groups) Moved group
        (deprecated, no longer logged)
    :ivar GroupRemoveExternalIdType EventType.group_remove_external_id: (groups)
        Removed external ID for group
    :ivar GroupRemoveMemberType EventType.group_remove_member: (groups) Removed
        team members from group
    :ivar GroupRenameType EventType.group_rename: (groups) Renamed group
    :ivar AccountLockOrUnlockedType EventType.account_lock_or_unlocked: (logins)
        Unlocked/locked account after failed sign in attempts
    :ivar EmmErrorType EventType.emm_error: (logins) Failed to sign in via EMM
        (deprecated, replaced by 'Failed to sign in')
    :ivar GuestAdminSignedInViaTrustedTeamsType
        EventType.guest_admin_signed_in_via_trusted_teams: (logins) Started
        trusted team admin session
    :ivar GuestAdminSignedOutViaTrustedTeamsType
        EventType.guest_admin_signed_out_via_trusted_teams: (logins) Ended
        trusted team admin session
    :ivar LoginFailType EventType.login_fail: (logins) Failed to sign in
    :ivar LoginSuccessType EventType.login_success: (logins) Signed in
    :ivar LogoutType EventType.logout: (logins) Signed out
    :ivar ResellerSupportSessionEndType EventType.reseller_support_session_end:
        (logins) Ended reseller support session
    :ivar ResellerSupportSessionStartType
        EventType.reseller_support_session_start: (logins) Started reseller
        support session
    :ivar SignInAsSessionEndType EventType.sign_in_as_session_end: (logins)
        Ended admin sign-in-as session
    :ivar SignInAsSessionStartType EventType.sign_in_as_session_start: (logins)
        Started admin sign-in-as session
    :ivar SsoErrorType EventType.sso_error: (logins) Failed to sign in via SSO
        (deprecated, replaced by 'Failed to sign in')
    :ivar CreateTeamInviteLinkType EventType.create_team_invite_link: (members)
        Created team invite link
    :ivar DeleteTeamInviteLinkType EventType.delete_team_invite_link: (members)
        Deleted team invite link
    :ivar MemberAddExternalIdType EventType.member_add_external_id: (members)
        Added an external ID for team member
    :ivar MemberAddNameType EventType.member_add_name: (members) Added team
        member name
    :ivar MemberChangeAdminRoleType EventType.member_change_admin_role:
        (members) Changed team member admin role
    :ivar MemberChangeEmailType EventType.member_change_email: (members) Changed
        team member email
    :ivar MemberChangeExternalIdType EventType.member_change_external_id:
        (members) Changed the external ID for team member
    :ivar MemberChangeMembershipTypeType
        EventType.member_change_membership_type: (members) Changed membership
        type (limited/full) of member (deprecated, no longer logged)
    :ivar MemberChangeNameType EventType.member_change_name: (members) Changed
        team member name
    :ivar MemberChangeResellerRoleType EventType.member_change_reseller_role:
        (members) Changed team member reseller role
    :ivar MemberChangeStatusType EventType.member_change_status: (members)
        Changed member status (invited, joined, suspended, etc.)
    :ivar MemberDeleteManualContactsType
        EventType.member_delete_manual_contacts: (members) Cleared manually
        added contacts
    :ivar MemberDeleteProfilePhotoType EventType.member_delete_profile_photo:
        (members) Deleted team member profile photo
    :ivar MemberPermanentlyDeleteAccountContentsType
        EventType.member_permanently_delete_account_contents: (members)
        Permanently deleted contents of deleted team member account
    :ivar MemberRemoveExternalIdType EventType.member_remove_external_id:
        (members) Removed the external ID for team member
    :ivar MemberSetProfilePhotoType EventType.member_set_profile_photo:
        (members) Set team member profile photo
    :ivar MemberSpaceLimitsAddCustomQuotaType
        EventType.member_space_limits_add_custom_quota: (members) Set custom
        member space limit
    :ivar MemberSpaceLimitsChangeCustomQuotaType
        EventType.member_space_limits_change_custom_quota: (members) Changed
        custom member space limit
    :ivar MemberSpaceLimitsChangeStatusType
        EventType.member_space_limits_change_status: (members) Changed space
        limit status
    :ivar MemberSpaceLimitsRemoveCustomQuotaType
        EventType.member_space_limits_remove_custom_quota: (members) Removed
        custom member space limit
    :ivar MemberSuggestType EventType.member_suggest: (members) Suggested person
        to add to team
    :ivar MemberTransferAccountContentsType
        EventType.member_transfer_account_contents: (members) Transferred
        contents of deleted member account to another member
    :ivar PendingSecondaryEmailAddedType
        EventType.pending_secondary_email_added: (members) Added pending
        secondary email
    :ivar SecondaryEmailDeletedType EventType.secondary_email_deleted: (members)
        Deleted secondary email
    :ivar SecondaryEmailVerifiedType EventType.secondary_email_verified:
        (members) Verified secondary email
    :ivar SecondaryMailsPolicyChangedType
        EventType.secondary_mails_policy_changed: (members) Secondary mails
        policy changed
    :ivar BinderAddPageType EventType.binder_add_page: (paper) Added Binder page
        (deprecated, replaced by 'Edited files')
    :ivar BinderAddSectionType EventType.binder_add_section: (paper) Added
        Binder section (deprecated, replaced by 'Edited files')
    :ivar BinderRemovePageType EventType.binder_remove_page: (paper) Removed
        Binder page (deprecated, replaced by 'Edited files')
    :ivar BinderRemoveSectionType EventType.binder_remove_section: (paper)
        Removed Binder section (deprecated, replaced by 'Edited files')
    :ivar BinderRenamePageType EventType.binder_rename_page: (paper) Renamed
        Binder page (deprecated, replaced by 'Edited files')
    :ivar BinderRenameSectionType EventType.binder_rename_section: (paper)
        Renamed Binder section (deprecated, replaced by 'Edited files')
    :ivar BinderReorderPageType EventType.binder_reorder_page: (paper) Reordered
        Binder page (deprecated, replaced by 'Edited files')
    :ivar BinderReorderSectionType EventType.binder_reorder_section: (paper)
        Reordered Binder section (deprecated, replaced by 'Edited files')
    :ivar PaperContentAddMemberType EventType.paper_content_add_member: (paper)
        Added users and/or groups to Paper doc/folder
    :ivar PaperContentAddToFolderType EventType.paper_content_add_to_folder:
        (paper) Added Paper doc/folder to folder
    :ivar PaperContentArchiveType EventType.paper_content_archive: (paper)
        Archived Paper doc/folder
    :ivar PaperContentCreateType EventType.paper_content_create: (paper) Created
        Paper doc/folder
    :ivar PaperContentPermanentlyDeleteType
        EventType.paper_content_permanently_delete: (paper) Permanently deleted
        Paper doc/folder
    :ivar PaperContentRemoveFromFolderType
        EventType.paper_content_remove_from_folder: (paper) Removed Paper
        doc/folder from folder
    :ivar PaperContentRemoveMemberType EventType.paper_content_remove_member:
        (paper) Removed users and/or groups from Paper doc/folder
    :ivar PaperContentRenameType EventType.paper_content_rename: (paper) Renamed
        Paper doc/folder
    :ivar PaperContentRestoreType EventType.paper_content_restore: (paper)
        Restored archived Paper doc/folder
    :ivar PaperDocAddCommentType EventType.paper_doc_add_comment: (paper) Added
        Paper doc comment
    :ivar PaperDocChangeMemberRoleType EventType.paper_doc_change_member_role:
        (paper) Changed member permissions for Paper doc
    :ivar PaperDocChangeSharingPolicyType
        EventType.paper_doc_change_sharing_policy: (paper) Changed sharing
        setting for Paper doc
    :ivar PaperDocChangeSubscriptionType
        EventType.paper_doc_change_subscription: (paper) Followed/unfollowed
        Paper doc
    :ivar PaperDocDeletedType EventType.paper_doc_deleted: (paper) Archived
        Paper doc (deprecated, no longer logged)
    :ivar PaperDocDeleteCommentType EventType.paper_doc_delete_comment: (paper)
        Deleted Paper doc comment
    :ivar PaperDocDownloadType EventType.paper_doc_download: (paper) Downloaded
        Paper doc in specific format
    :ivar PaperDocEditType EventType.paper_doc_edit: (paper) Edited Paper doc
    :ivar PaperDocEditCommentType EventType.paper_doc_edit_comment: (paper)
        Edited Paper doc comment
    :ivar PaperDocFollowedType EventType.paper_doc_followed: (paper) Followed
        Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc')
    :ivar PaperDocMentionType EventType.paper_doc_mention: (paper) Mentioned
        user in Paper doc
    :ivar PaperDocOwnershipChangedType EventType.paper_doc_ownership_changed:
        (paper) Transferred ownership of Paper doc
    :ivar PaperDocRequestAccessType EventType.paper_doc_request_access: (paper)
        Requested access to Paper doc
    :ivar PaperDocResolveCommentType EventType.paper_doc_resolve_comment:
        (paper) Resolved Paper doc comment
    :ivar PaperDocRevertType EventType.paper_doc_revert: (paper) Restored Paper
        doc to previous version
    :ivar PaperDocSlackShareType EventType.paper_doc_slack_share: (paper) Shared
        Paper doc via Slack
    :ivar PaperDocTeamInviteType EventType.paper_doc_team_invite: (paper) Shared
        Paper doc with users and/or groups (deprecated, no longer logged)
    :ivar PaperDocTrashedType EventType.paper_doc_trashed: (paper) Deleted Paper
        doc
    :ivar PaperDocUnresolveCommentType EventType.paper_doc_unresolve_comment:
        (paper) Unresolved Paper doc comment
    :ivar PaperDocUntrashedType EventType.paper_doc_untrashed: (paper) Restored
        Paper doc
    :ivar PaperDocViewType EventType.paper_doc_view: (paper) Viewed Paper doc
    :ivar PaperExternalViewAllowType EventType.paper_external_view_allow:
        (paper) Changed Paper external sharing setting to anyone (deprecated, no
        longer logged)
    :ivar PaperExternalViewDefaultTeamType
        EventType.paper_external_view_default_team: (paper) Changed Paper
        external sharing setting to default team (deprecated, no longer logged)
    :ivar PaperExternalViewForbidType EventType.paper_external_view_forbid:
        (paper) Changed Paper external sharing setting to team-only (deprecated,
        no longer logged)
    :ivar PaperFolderChangeSubscriptionType
        EventType.paper_folder_change_subscription: (paper) Followed/unfollowed
        Paper folder
    :ivar PaperFolderDeletedType EventType.paper_folder_deleted: (paper)
        Archived Paper folder (deprecated, no longer logged)
    :ivar PaperFolderFollowedType EventType.paper_folder_followed: (paper)
        Followed Paper folder (deprecated, replaced by 'Followed/unfollowed
        Paper folder')
    :ivar PaperFolderTeamInviteType EventType.paper_folder_team_invite: (paper)
        Shared Paper folder with users and/or groups (deprecated, no longer
        logged)
    :ivar PaperPublishedLinkChangePermissionType
        EventType.paper_published_link_change_permission: (paper) Changed
        permissions for published doc
    :ivar PaperPublishedLinkCreateType EventType.paper_published_link_create:
        (paper) Published doc
    :ivar PaperPublishedLinkDisabledType
        EventType.paper_published_link_disabled: (paper) Unpublished doc
    :ivar PaperPublishedLinkViewType EventType.paper_published_link_view:
        (paper) Viewed published doc
    :ivar PasswordChangeType EventType.password_change: (passwords) Changed
        password
    :ivar PasswordResetType EventType.password_reset: (passwords) Reset password
    :ivar PasswordResetAllType EventType.password_reset_all: (passwords) Reset
        all team member passwords
    :ivar ClassificationCreateReportType EventType.classification_create_report:
        (reports) Created Classification report
    :ivar ClassificationCreateReportFailType
        EventType.classification_create_report_fail: (reports) Couldn't create
        Classification report
    :ivar EmmCreateExceptionsReportType EventType.emm_create_exceptions_report:
        (reports) Created EMM-excluded users report
    :ivar EmmCreateUsageReportType EventType.emm_create_usage_report: (reports)
        Created EMM mobile app usage report
    :ivar ExportMembersReportType EventType.export_members_report: (reports)
        Created member data report
    :ivar ExportMembersReportFailType EventType.export_members_report_fail:
        (reports) Failed to create members data report
    :ivar ExternalSharingCreateReportType
        EventType.external_sharing_create_report: (reports) Created External
        sharing report
    :ivar ExternalSharingReportFailedType
        EventType.external_sharing_report_failed: (reports) Couldn't create
        External sharing report
    :ivar NoExpirationLinkGenCreateReportType
        EventType.no_expiration_link_gen_create_report: (reports) Report
        created: Links created with no expiration
    :ivar NoExpirationLinkGenReportFailedType
        EventType.no_expiration_link_gen_report_failed: (reports) Couldn't
        create report: Links created with no expiration
    :ivar NoPasswordLinkGenCreateReportType
        EventType.no_password_link_gen_create_report: (reports) Report created:
        Links created without passwords
    :ivar NoPasswordLinkGenReportFailedType
        EventType.no_password_link_gen_report_failed: (reports) Couldn't create
        report: Links created without passwords
    :ivar NoPasswordLinkViewCreateReportType
        EventType.no_password_link_view_create_report: (reports) Report created:
        Views of links without passwords
    :ivar NoPasswordLinkViewReportFailedType
        EventType.no_password_link_view_report_failed: (reports) Couldn't create
        report: Views of links without passwords
    :ivar OutdatedLinkViewCreateReportType
        EventType.outdated_link_view_create_report: (reports) Report created:
        Views of old links
    :ivar OutdatedLinkViewReportFailedType
        EventType.outdated_link_view_report_failed: (reports) Couldn't create
        report: Views of old links
    :ivar PaperAdminExportStartType EventType.paper_admin_export_start:
        (reports) Exported all team Paper docs
    :ivar SmartSyncCreateAdminPrivilegeReportType
        EventType.smart_sync_create_admin_privilege_report: (reports) Created
        Smart Sync non-admin devices report
    :ivar TeamActivityCreateReportType EventType.team_activity_create_report:
        (reports) Created team activity report
    :ivar TeamActivityCreateReportFailType
        EventType.team_activity_create_report_fail: (reports) Couldn't generate
        team activity report
    :ivar CollectionShareType EventType.collection_share: (sharing) Shared album
    :ivar FileTransfersFileAddType EventType.file_transfers_file_add: (sharing)
        Transfer files added
    :ivar FileTransfersTransferDeleteType
        EventType.file_transfers_transfer_delete: (sharing) Deleted transfer
    :ivar FileTransfersTransferDownloadType
        EventType.file_transfers_transfer_download: (sharing) Transfer
        downloaded
    :ivar FileTransfersTransferSendType EventType.file_transfers_transfer_send:
        (sharing) Sent transfer
    :ivar FileTransfersTransferViewType EventType.file_transfers_transfer_view:
        (sharing) Viewed transfer
    :ivar NoteAclInviteOnlyType EventType.note_acl_invite_only: (sharing)
        Changed Paper doc to invite-only (deprecated, no longer logged)
    :ivar NoteAclLinkType EventType.note_acl_link: (sharing) Changed Paper doc
        to link-accessible (deprecated, no longer logged)
    :ivar NoteAclTeamLinkType EventType.note_acl_team_link: (sharing) Changed
        Paper doc to link-accessible for team (deprecated, no longer logged)
    :ivar NoteSharedType EventType.note_shared: (sharing) Shared Paper doc
        (deprecated, no longer logged)
    :ivar NoteShareReceiveType EventType.note_share_receive: (sharing) Shared
        received Paper doc (deprecated, no longer logged)
    :ivar OpenNoteSharedType EventType.open_note_shared: (sharing) Opened shared
        Paper doc (deprecated, no longer logged)
    :ivar SfAddGroupType EventType.sf_add_group: (sharing) Added team to shared
        folder (deprecated, no longer logged)
    :ivar SfAllowNonMembersToViewSharedLinksType
        EventType.sf_allow_non_members_to_view_shared_links: (sharing) Allowed
        non-collaborators to view links to files in shared folder (deprecated,
        no longer logged)
    :ivar SfExternalInviteWarnType EventType.sf_external_invite_warn: (sharing)
        Set team members to see warning before sharing folders outside team
        (deprecated, no longer logged)
    :ivar SfFbInviteType EventType.sf_fb_invite: (sharing) Invited Facebook
        users to shared folder (deprecated, no longer logged)
    :ivar SfFbInviteChangeRoleType EventType.sf_fb_invite_change_role: (sharing)
        Changed Facebook user's role in shared folder (deprecated, no longer
        logged)
    :ivar SfFbUninviteType EventType.sf_fb_uninvite: (sharing) Uninvited
        Facebook user from shared folder (deprecated, no longer logged)
    :ivar SfInviteGroupType EventType.sf_invite_group: (sharing) Invited group
        to shared folder (deprecated, no longer logged)
    :ivar SfTeamGrantAccessType EventType.sf_team_grant_access: (sharing)
        Granted access to shared folder (deprecated, no longer logged)
    :ivar SfTeamInviteType EventType.sf_team_invite: (sharing) Invited team
        members to shared folder (deprecated, replaced by 'Invited user to
        Dropbox and added them to shared file/folder')
    :ivar SfTeamInviteChangeRoleType EventType.sf_team_invite_change_role:
        (sharing) Changed team member's role in shared folder (deprecated, no
        longer logged)
    :ivar SfTeamJoinType EventType.sf_team_join: (sharing) Joined team member's
        shared folder (deprecated, no longer logged)
    :ivar SfTeamJoinFromOobLinkType EventType.sf_team_join_from_oob_link:
        (sharing) Joined team member's shared folder from link (deprecated, no
        longer logged)
    :ivar SfTeamUninviteType EventType.sf_team_uninvite: (sharing) Unshared
        folder with team member (deprecated, replaced by 'Removed invitee from
        shared file/folder before invite was accepted')
    :ivar SharedContentAddInviteesType EventType.shared_content_add_invitees:
        (sharing) Invited user to Dropbox and added them to shared file/folder
    :ivar SharedContentAddLinkExpiryType
        EventType.shared_content_add_link_expiry: (sharing) Added expiration
        date to link for shared file/folder (deprecated, no longer logged)
    :ivar SharedContentAddLinkPasswordType
        EventType.shared_content_add_link_password: (sharing) Added password to
        link for shared file/folder (deprecated, no longer logged)
    :ivar SharedContentAddMemberType EventType.shared_content_add_member:
        (sharing) Added users and/or groups to shared file/folder
    :ivar SharedContentChangeDownloadsPolicyType
        EventType.shared_content_change_downloads_policy: (sharing) Changed
        whether members can download shared file/folder (deprecated, no longer
        logged)
    :ivar SharedContentChangeInviteeRoleType
        EventType.shared_content_change_invitee_role: (sharing) Changed access
        type of invitee to shared file/folder before invite was accepted
    :ivar SharedContentChangeLinkAudienceType
        EventType.shared_content_change_link_audience: (sharing) Changed link
        audience of shared file/folder (deprecated, no longer logged)
    :ivar SharedContentChangeLinkExpiryType
        EventType.shared_content_change_link_expiry: (sharing) Changed link
        expiration of shared file/folder (deprecated, no longer logged)
    :ivar SharedContentChangeLinkPasswordType
        EventType.shared_content_change_link_password: (sharing) Changed link
        password of shared file/folder (deprecated, no longer logged)
    :ivar SharedContentChangeMemberRoleType
        EventType.shared_content_change_member_role: (sharing) Changed access
        type of shared file/folder member
    :ivar SharedContentChangeViewerInfoPolicyType
        EventType.shared_content_change_viewer_info_policy: (sharing) Changed
        whether members can see who viewed shared file/folder
    :ivar SharedContentClaimInvitationType
        EventType.shared_content_claim_invitation: (sharing) Acquired membership
        of shared file/folder by accepting invite
    :ivar SharedContentCopyType EventType.shared_content_copy: (sharing) Copied
        shared file/folder to own Dropbox
    :ivar SharedContentDownloadType EventType.shared_content_download: (sharing)
        Downloaded shared file/folder
    :ivar SharedContentRelinquishMembershipType
        EventType.shared_content_relinquish_membership: (sharing) Left shared
        file/folder
    :ivar SharedContentRemoveInviteesType
        EventType.shared_content_remove_invitees: (sharing) Removed invitee from
        shared file/folder before invite was accepted
    :ivar SharedContentRemoveLinkExpiryType
        EventType.shared_content_remove_link_expiry: (sharing) Removed link
        expiration date of shared file/folder (deprecated, no longer logged)
    :ivar SharedContentRemoveLinkPasswordType
        EventType.shared_content_remove_link_password: (sharing) Removed link
        password of shared file/folder (deprecated, no longer logged)
    :ivar SharedContentRemoveMemberType EventType.shared_content_remove_member:
        (sharing) Removed user/group from shared file/folder
    :ivar SharedContentRequestAccessType
        EventType.shared_content_request_access: (sharing) Requested access to
        shared file/folder
    :ivar SharedContentRestoreInviteesType
        EventType.shared_content_restore_invitees: (sharing) Restored shared
        file/folder invitees
    :ivar SharedContentRestoreMemberType
        EventType.shared_content_restore_member: (sharing) Restored users and/or
        groups to membership of shared file/folder
    :ivar SharedContentUnshareType EventType.shared_content_unshare: (sharing)
        Unshared file/folder by clearing membership
    :ivar SharedContentViewType EventType.shared_content_view: (sharing)
        Previewed shared file/folder
    :ivar SharedFolderChangeLinkPolicyType
        EventType.shared_folder_change_link_policy: (sharing) Changed who can
        access shared folder via link
    :ivar SharedFolderChangeMembersInheritancePolicyType
        EventType.shared_folder_change_members_inheritance_policy: (sharing)
        Changed whether shared folder inherits members from parent folder
    :ivar SharedFolderChangeMembersManagementPolicyType
        EventType.shared_folder_change_members_management_policy: (sharing)
        Changed who can add/remove members of shared folder
    :ivar SharedFolderChangeMembersPolicyType
        EventType.shared_folder_change_members_policy: (sharing) Changed who can
        become member of shared folder
    :ivar SharedFolderCreateType EventType.shared_folder_create: (sharing)
        Created shared folder
    :ivar SharedFolderDeclineInvitationType
        EventType.shared_folder_decline_invitation: (sharing) Declined team
        member's invite to shared folder
    :ivar SharedFolderMountType EventType.shared_folder_mount: (sharing) Added
        shared folder to own Dropbox
    :ivar SharedFolderNestType EventType.shared_folder_nest: (sharing) Changed
        parent of shared folder
    :ivar SharedFolderTransferOwnershipType
        EventType.shared_folder_transfer_ownership: (sharing) Transferred
        ownership of shared folder to another member
    :ivar SharedFolderUnmountType EventType.shared_folder_unmount: (sharing)
        Deleted shared folder from Dropbox
    :ivar SharedLinkAddExpiryType EventType.shared_link_add_expiry: (sharing)
        Added shared link expiration date
    :ivar SharedLinkChangeExpiryType EventType.shared_link_change_expiry:
        (sharing) Changed shared link expiration date
    :ivar SharedLinkChangeVisibilityType
        EventType.shared_link_change_visibility: (sharing) Changed visibility of
        shared link
    :ivar SharedLinkCopyType EventType.shared_link_copy: (sharing) Added
        file/folder to Dropbox from shared link
    :ivar SharedLinkCreateType EventType.shared_link_create: (sharing) Created
        shared link
    :ivar SharedLinkDisableType EventType.shared_link_disable: (sharing) Removed
        shared link
    :ivar SharedLinkDownloadType EventType.shared_link_download: (sharing)
        Downloaded file/folder from shared link
    :ivar SharedLinkRemoveExpiryType EventType.shared_link_remove_expiry:
        (sharing) Removed shared link expiration date
    :ivar SharedLinkSettingsAddExpirationType
        EventType.shared_link_settings_add_expiration: (sharing) Added an
        expiration date to the shared link
    :ivar SharedLinkSettingsAddPasswordType
        EventType.shared_link_settings_add_password: (sharing) Added a password
        to the shared link
    :ivar SharedLinkSettingsAllowDownloadDisabledType
        EventType.shared_link_settings_allow_download_disabled: (sharing)
        Disabled downloads
    :ivar SharedLinkSettingsAllowDownloadEnabledType
        EventType.shared_link_settings_allow_download_enabled: (sharing) Enabled
        downloads
    :ivar SharedLinkSettingsChangeAudienceType
        EventType.shared_link_settings_change_audience: (sharing) Changed the
        audience of the shared link
    :ivar SharedLinkSettingsChangeExpirationType
        EventType.shared_link_settings_change_expiration: (sharing) Changed the
        expiration date of the shared link
    :ivar SharedLinkSettingsChangePasswordType
        EventType.shared_link_settings_change_password: (sharing) Changed the
        password of the shared link
    :ivar SharedLinkSettingsRemoveExpirationType
        EventType.shared_link_settings_remove_expiration: (sharing) Removed the
        expiration date from the shared link
    :ivar SharedLinkSettingsRemovePasswordType
        EventType.shared_link_settings_remove_password: (sharing) Removed the
        password from the shared link
    :ivar SharedLinkShareType EventType.shared_link_share: (sharing) Added
        members as audience of shared link
    :ivar SharedLinkViewType EventType.shared_link_view: (sharing) Opened shared
        link
    :ivar SharedNoteOpenedType EventType.shared_note_opened: (sharing) Opened
        shared Paper doc (deprecated, no longer logged)
    :ivar ShmodelDisableDownloadsType EventType.shmodel_disable_downloads:
        (sharing) Disabled downloads for link (deprecated, no longer logged)
    :ivar ShmodelEnableDownloadsType EventType.shmodel_enable_downloads:
        (sharing) Enabled downloads for link (deprecated, no longer logged)
    :ivar ShmodelGroupShareType EventType.shmodel_group_share: (sharing) Shared
        link with group (deprecated, no longer logged)
    :ivar ShowcaseAccessGrantedType EventType.showcase_access_granted:
        (showcase) Granted access to showcase
    :ivar ShowcaseAddMemberType EventType.showcase_add_member: (showcase) Added
        member to showcase
    :ivar ShowcaseArchivedType EventType.showcase_archived: (showcase) Archived
        showcase
    :ivar ShowcaseCreatedType EventType.showcase_created: (showcase) Created
        showcase
    :ivar ShowcaseDeleteCommentType EventType.showcase_delete_comment:
        (showcase) Deleted showcase comment
    :ivar ShowcaseEditedType EventType.showcase_edited: (showcase) Edited
        showcase
    :ivar ShowcaseEditCommentType EventType.showcase_edit_comment: (showcase)
        Edited showcase comment
    :ivar ShowcaseFileAddedType EventType.showcase_file_added: (showcase) Added
        file to showcase
    :ivar ShowcaseFileDownloadType EventType.showcase_file_download: (showcase)
        Downloaded file from showcase
    :ivar ShowcaseFileRemovedType EventType.showcase_file_removed: (showcase)
        Removed file from showcase
    :ivar ShowcaseFileViewType EventType.showcase_file_view: (showcase) Viewed
        file in showcase
    :ivar ShowcasePermanentlyDeletedType EventType.showcase_permanently_deleted:
        (showcase) Permanently deleted showcase
    :ivar ShowcasePostCommentType EventType.showcase_post_comment: (showcase)
        Added showcase comment
    :ivar ShowcaseRemoveMemberType EventType.showcase_remove_member: (showcase)
        Removed member from showcase
    :ivar ShowcaseRenamedType EventType.showcase_renamed: (showcase) Renamed
        showcase
    :ivar ShowcaseRequestAccessType EventType.showcase_request_access:
        (showcase) Requested access to showcase
    :ivar ShowcaseResolveCommentType EventType.showcase_resolve_comment:
        (showcase) Resolved showcase comment
    :ivar ShowcaseRestoredType EventType.showcase_restored: (showcase)
        Unarchived showcase
    :ivar ShowcaseTrashedType EventType.showcase_trashed: (showcase) Deleted
        showcase
    :ivar ShowcaseTrashedDeprecatedType EventType.showcase_trashed_deprecated:
        (showcase) Deleted showcase (old version) (deprecated, replaced by
        'Deleted showcase')
    :ivar ShowcaseUnresolveCommentType EventType.showcase_unresolve_comment:
        (showcase) Unresolved showcase comment
    :ivar ShowcaseUntrashedType EventType.showcase_untrashed: (showcase)
        Restored showcase
    :ivar ShowcaseUntrashedDeprecatedType
        EventType.showcase_untrashed_deprecated: (showcase) Restored showcase
        (old version) (deprecated, replaced by 'Restored showcase')
    :ivar ShowcaseViewType EventType.showcase_view: (showcase) Viewed showcase
    :ivar SsoAddCertType EventType.sso_add_cert: (sso) Added X.509 certificate
        for SSO
    :ivar SsoAddLoginUrlType EventType.sso_add_login_url: (sso) Added sign-in
        URL for SSO
    :ivar SsoAddLogoutUrlType EventType.sso_add_logout_url: (sso) Added sign-out
        URL for SSO
    :ivar SsoChangeCertType EventType.sso_change_cert: (sso) Changed X.509
        certificate for SSO
    :ivar SsoChangeLoginUrlType EventType.sso_change_login_url: (sso) Changed
        sign-in URL for SSO
    :ivar SsoChangeLogoutUrlType EventType.sso_change_logout_url: (sso) Changed
        sign-out URL for SSO
    :ivar SsoChangeSamlIdentityModeType EventType.sso_change_saml_identity_mode:
        (sso) Changed SAML identity mode for SSO
    :ivar SsoRemoveCertType EventType.sso_remove_cert: (sso) Removed X.509
        certificate for SSO
    :ivar SsoRemoveLoginUrlType EventType.sso_remove_login_url: (sso) Removed
        sign-in URL for SSO
    :ivar SsoRemoveLogoutUrlType EventType.sso_remove_logout_url: (sso) Removed
        sign-out URL for SSO
    :ivar TeamFolderChangeStatusType EventType.team_folder_change_status:
        (team_folders) Changed archival status of team folder
    :ivar TeamFolderCreateType EventType.team_folder_create: (team_folders)
        Created team folder in active status
    :ivar TeamFolderDowngradeType EventType.team_folder_downgrade:
        (team_folders) Downgraded team folder to regular shared folder
    :ivar TeamFolderPermanentlyDeleteType
        EventType.team_folder_permanently_delete: (team_folders) Permanently
        deleted archived team folder
    :ivar TeamFolderRenameType EventType.team_folder_rename: (team_folders)
        Renamed active/archived team folder
    :ivar TeamSelectiveSyncSettingsChangedType
        EventType.team_selective_sync_settings_changed: (team_folders) Changed
        sync default
    :ivar AccountCaptureChangePolicyType
        EventType.account_capture_change_policy: (team_policies) Changed account
        capture setting on team domain
    :ivar AdminEmailRemindersChangedType
        EventType.admin_email_reminders_changed: (team_policies) Changed admin
        reminder settings for requests to join the team
    :ivar AllowDownloadDisabledType EventType.allow_download_disabled:
        (team_policies) Disabled downloads (deprecated, no longer logged)
    :ivar AllowDownloadEnabledType EventType.allow_download_enabled:
        (team_policies) Enabled downloads (deprecated, no longer logged)
    :ivar AppPermissionsChangedType EventType.app_permissions_changed:
        (team_policies) Changed app permissions
    :ivar CameraUploadsPolicyChangedType
        EventType.camera_uploads_policy_changed: (team_policies) Changed camera
        uploads setting for team
    :ivar CaptureTranscriptPolicyChangedType
        EventType.capture_transcript_policy_changed: (team_policies) Changed
        Capture transcription policy for team
    :ivar ClassificationChangePolicyType EventType.classification_change_policy:
        (team_policies) Changed classification policy for team
    :ivar ComputerBackupPolicyChangedType
        EventType.computer_backup_policy_changed: (team_policies) Changed
        computer backup policy for team
    :ivar ContentAdministrationPolicyChangedType
        EventType.content_administration_policy_changed: (team_policies) Changed
        content management setting
    :ivar DataPlacementRestrictionChangePolicyType
        EventType.data_placement_restriction_change_policy: (team_policies) Set
        restrictions on data center locations where team data resides
    :ivar DataPlacementRestrictionSatisfyPolicyType
        EventType.data_placement_restriction_satisfy_policy: (team_policies)
        Completed restrictions on data center locations where team data resides
    :ivar DeviceApprovalsAddExceptionType
        EventType.device_approvals_add_exception: (team_policies) Added members
        to device approvals exception list
    :ivar DeviceApprovalsChangeDesktopPolicyType
        EventType.device_approvals_change_desktop_policy: (team_policies)
        Set/removed limit on number of computers member can link to team Dropbox
        account
    :ivar DeviceApprovalsChangeMobilePolicyType
        EventType.device_approvals_change_mobile_policy: (team_policies)
        Set/removed limit on number of mobile devices member can link to team
        Dropbox account
    :ivar DeviceApprovalsChangeOverageActionType
        EventType.device_approvals_change_overage_action: (team_policies)
        Changed device approvals setting when member is over limit
    :ivar DeviceApprovalsChangeUnlinkActionType
        EventType.device_approvals_change_unlink_action: (team_policies) Changed
        device approvals setting when member unlinks approved device
    :ivar DeviceApprovalsRemoveExceptionType
        EventType.device_approvals_remove_exception: (team_policies) Removed
        members from device approvals exception list
    :ivar DirectoryRestrictionsAddMembersType
        EventType.directory_restrictions_add_members: (team_policies) Added
        members to directory restrictions list
    :ivar DirectoryRestrictionsRemoveMembersType
        EventType.directory_restrictions_remove_members: (team_policies) Removed
        members from directory restrictions list
    :ivar DropboxPasswordsPolicyChangedType
        EventType.dropbox_passwords_policy_changed: (team_policies) Changed
        Dropbox Passwords policy for team
    :ivar EmailIngestPolicyChangedType EventType.email_ingest_policy_changed:
        (team_policies) Changed email to Dropbox policy for team
    :ivar EmmAddExceptionType EventType.emm_add_exception: (team_policies) Added
        members to EMM exception list
    :ivar EmmChangePolicyType EventType.emm_change_policy: (team_policies)
        Enabled/disabled enterprise mobility management for members
    :ivar EmmRemoveExceptionType EventType.emm_remove_exception: (team_policies)
        Removed members from EMM exception list
    :ivar ExtendedVersionHistoryChangePolicyType
        EventType.extended_version_history_change_policy: (team_policies)
        Accepted/opted out of extended version history
    :ivar ExternalDriveBackupPolicyChangedType
        EventType.external_drive_backup_policy_changed: (team_policies) Changed
        external drive backup policy for team
    :ivar FileCommentsChangePolicyType EventType.file_comments_change_policy:
        (team_policies) Enabled/disabled commenting on team files
    :ivar FileLockingPolicyChangedType EventType.file_locking_policy_changed:
        (team_policies) Changed file locking policy for team
    :ivar FileProviderMigrationPolicyChangedType
        EventType.file_provider_migration_policy_changed: (team_policies)
        Changed File Provider Migration policy for team
    :ivar FileRequestsChangePolicyType EventType.file_requests_change_policy:
        (team_policies) Enabled/disabled file requests
    :ivar FileRequestsEmailsEnabledType EventType.file_requests_emails_enabled:
        (team_policies) Enabled file request emails for everyone (deprecated, no
        longer logged)
    :ivar FileRequestsEmailsRestrictedToTeamOnlyType
        EventType.file_requests_emails_restricted_to_team_only: (team_policies)
        Enabled file request emails for team (deprecated, no longer logged)
    :ivar FileTransfersPolicyChangedType
        EventType.file_transfers_policy_changed: (team_policies) Changed file
        transfers policy for team
    :ivar FolderLinkRestrictionPolicyChangedType
        EventType.folder_link_restriction_policy_changed: (team_policies)
        Changed folder link restrictions policy for team
    :ivar GoogleSsoChangePolicyType EventType.google_sso_change_policy:
        (team_policies) Enabled/disabled Google single sign-on for team
    :ivar GroupUserManagementChangePolicyType
        EventType.group_user_management_change_policy: (team_policies) Changed
        who can create groups
    :ivar IntegrationPolicyChangedType EventType.integration_policy_changed:
        (team_policies) Changed integration policy for team
    :ivar InviteAcceptanceEmailPolicyChangedType
        EventType.invite_acceptance_email_policy_changed: (team_policies)
        Changed invite accept email policy for team
    :ivar MemberRequestsChangePolicyType
        EventType.member_requests_change_policy: (team_policies) Changed whether
        users can find team when not invited
    :ivar MemberSendInvitePolicyChangedType
        EventType.member_send_invite_policy_changed: (team_policies) Changed
        member send invite policy for team
    :ivar MemberSpaceLimitsAddExceptionType
        EventType.member_space_limits_add_exception: (team_policies) Added
        members to member space limit exception list
    :ivar MemberSpaceLimitsChangeCapsTypePolicyType
        EventType.member_space_limits_change_caps_type_policy: (team_policies)
        Changed member space limit type for team
    :ivar MemberSpaceLimitsChangePolicyType
        EventType.member_space_limits_change_policy: (team_policies) Changed
        team default member space limit
    :ivar MemberSpaceLimitsRemoveExceptionType
        EventType.member_space_limits_remove_exception: (team_policies) Removed
        members from member space limit exception list
    :ivar MemberSuggestionsChangePolicyType
        EventType.member_suggestions_change_policy: (team_policies)
        Enabled/disabled option for team members to suggest people to add to
        team
    :ivar MicrosoftOfficeAddinChangePolicyType
        EventType.microsoft_office_addin_change_policy: (team_policies)
        Enabled/disabled Microsoft Office add-in
    :ivar NetworkControlChangePolicyType
        EventType.network_control_change_policy: (team_policies)
        Enabled/disabled network control
    :ivar PaperChangeDeploymentPolicyType
        EventType.paper_change_deployment_policy: (team_policies) Changed
        whether Dropbox Paper, when enabled, is deployed to all members or to
        specific members
    :ivar PaperChangeMemberLinkPolicyType
        EventType.paper_change_member_link_policy: (team_policies) Changed
        whether non-members can view Paper docs with link (deprecated, no longer
        logged)
    :ivar PaperChangeMemberPolicyType EventType.paper_change_member_policy:
        (team_policies) Changed whether members can share Paper docs outside
        team, and if docs are accessible only by team members or anyone by
        default
    :ivar PaperChangePolicyType EventType.paper_change_policy: (team_policies)
        Enabled/disabled Dropbox Paper for team
    :ivar PaperDefaultFolderPolicyChangedType
        EventType.paper_default_folder_policy_changed: (team_policies) Changed
        Paper Default Folder Policy setting for team
    :ivar PaperDesktopPolicyChangedType EventType.paper_desktop_policy_changed:
        (team_policies) Enabled/disabled Paper Desktop for team
    :ivar PaperEnabledUsersGroupAdditionType
        EventType.paper_enabled_users_group_addition: (team_policies) Added
        users to Paper-enabled users list
    :ivar PaperEnabledUsersGroupRemovalType
        EventType.paper_enabled_users_group_removal: (team_policies) Removed
        users from Paper-enabled users list
    :ivar PasswordStrengthRequirementsChangePolicyType
        EventType.password_strength_requirements_change_policy: (team_policies)
        Changed team password strength requirements
    :ivar PermanentDeleteChangePolicyType
        EventType.permanent_delete_change_policy: (team_policies)
        Enabled/disabled ability of team members to permanently delete content
    :ivar ResellerSupportChangePolicyType
        EventType.reseller_support_change_policy: (team_policies)
        Enabled/disabled reseller support
    :ivar RewindPolicyChangedType EventType.rewind_policy_changed:
        (team_policies) Changed Rewind policy for team
    :ivar SendForSignaturePolicyChangedType
        EventType.send_for_signature_policy_changed: (team_policies) Changed
        send for signature policy for team
    :ivar SharingChangeFolderJoinPolicyType
        EventType.sharing_change_folder_join_policy: (team_policies) Changed
        whether team members can join shared folders owned outside team
    :ivar SharingChangeLinkAllowChangeExpirationPolicyType
        EventType.sharing_change_link_allow_change_expiration_policy:
        (team_policies) Changed the allow remove or change expiration policy for
        the links shared outside of the team
    :ivar SharingChangeLinkDefaultExpirationPolicyType
        EventType.sharing_change_link_default_expiration_policy: (team_policies)
        Changed the default expiration for the links shared outside of the team
    :ivar SharingChangeLinkEnforcePasswordPolicyType
        EventType.sharing_change_link_enforce_password_policy: (team_policies)
        Changed the password requirement for the links shared outside of the
        team
    :ivar SharingChangeLinkPolicyType EventType.sharing_change_link_policy:
        (team_policies) Changed whether members can share links outside team,
        and if links are accessible only by team members or anyone by default
    :ivar SharingChangeMemberPolicyType EventType.sharing_change_member_policy:
        (team_policies) Changed whether members can share files/folders outside
        team
    :ivar ShowcaseChangeDownloadPolicyType
        EventType.showcase_change_download_policy: (team_policies)
        Enabled/disabled downloading files from Dropbox Showcase for team
    :ivar ShowcaseChangeEnabledPolicyType
        EventType.showcase_change_enabled_policy: (team_policies)
        Enabled/disabled Dropbox Showcase for team
    :ivar ShowcaseChangeExternalSharingPolicyType
        EventType.showcase_change_external_sharing_policy: (team_policies)
        Enabled/disabled sharing Dropbox Showcase externally for team
    :ivar SmarterSmartSyncPolicyChangedType
        EventType.smarter_smart_sync_policy_changed: (team_policies) Changed
        automatic Smart Sync setting for team
    :ivar SmartSyncChangePolicyType EventType.smart_sync_change_policy:
        (team_policies) Changed default Smart Sync setting for team members
    :ivar SmartSyncNotOptOutType EventType.smart_sync_not_opt_out:
        (team_policies) Opted team into Smart Sync
    :ivar SmartSyncOptOutType EventType.smart_sync_opt_out: (team_policies)
        Opted team out of Smart Sync
    :ivar SsoChangePolicyType EventType.sso_change_policy: (team_policies)
        Changed single sign-on setting for team
    :ivar TeamBrandingPolicyChangedType EventType.team_branding_policy_changed:
        (team_policies) Changed team branding policy for team
    :ivar TeamExtensionsPolicyChangedType
        EventType.team_extensions_policy_changed: (team_policies) Changed App
        Integrations setting for team
    :ivar TeamSelectiveSyncPolicyChangedType
        EventType.team_selective_sync_policy_changed: (team_policies)
        Enabled/disabled Team Selective Sync for team
    :ivar TeamSharingWhitelistSubjectsChangedType
        EventType.team_sharing_whitelist_subjects_changed: (team_policies)
        Edited the approved list for sharing externally
    :ivar TfaAddExceptionType EventType.tfa_add_exception: (team_policies) Added
        members to two factor authentication exception list
    :ivar TfaChangePolicyType EventType.tfa_change_policy: (team_policies)
        Changed two-step verification setting for team
    :ivar TfaRemoveExceptionType EventType.tfa_remove_exception: (team_policies)
        Removed members from two factor authentication exception list
    :ivar TwoAccountChangePolicyType EventType.two_account_change_policy:
        (team_policies) Enabled/disabled option for members to link personal
        Dropbox account and team account to same computer
    :ivar ViewerInfoPolicyChangedType EventType.viewer_info_policy_changed:
        (team_policies) Changed team policy for viewer info
    :ivar WatermarkingPolicyChangedType EventType.watermarking_policy_changed:
        (team_policies) Changed watermarking policy for team
    :ivar WebSessionsChangeActiveSessionLimitType
        EventType.web_sessions_change_active_session_limit: (team_policies)
        Changed limit on active sessions per member
    :ivar WebSessionsChangeFixedLengthPolicyType
        EventType.web_sessions_change_fixed_length_policy: (team_policies)
        Changed how long members can stay signed in to Dropbox.com
    :ivar WebSessionsChangeIdleLengthPolicyType
        EventType.web_sessions_change_idle_length_policy: (team_policies)
        Changed how long team members can be idle while signed in to Dropbox.com
    :ivar DataResidencyMigrationRequestSuccessfulType
        EventType.data_residency_migration_request_successful: (team_profile)
        Requested data residency migration for team data
    :ivar DataResidencyMigrationRequestUnsuccessfulType
        EventType.data_residency_migration_request_unsuccessful: (team_profile)
        Request for data residency migration for team data has failed
    :ivar TeamMergeFromType EventType.team_merge_from: (team_profile) Merged
        another team into this team
    :ivar TeamMergeToType EventType.team_merge_to: (team_profile) Merged this
        team into another team
    :ivar TeamProfileAddBackgroundType EventType.team_profile_add_background:
        (team_profile) Added team background to display on shared link headers
    :ivar TeamProfileAddLogoType EventType.team_profile_add_logo: (team_profile)
        Added team logo to display on shared link headers
    :ivar TeamProfileChangeBackgroundType
        EventType.team_profile_change_background: (team_profile) Changed team
        background displayed on shared link headers
    :ivar TeamProfileChangeDefaultLanguageType
        EventType.team_profile_change_default_language: (team_profile) Changed
        default language for team
    :ivar TeamProfileChangeLogoType EventType.team_profile_change_logo:
        (team_profile) Changed team logo displayed on shared link headers
    :ivar TeamProfileChangeNameType EventType.team_profile_change_name:
        (team_profile) Changed team name
    :ivar TeamProfileRemoveBackgroundType
        EventType.team_profile_remove_background: (team_profile) Removed team
        background displayed on shared link headers
    :ivar TeamProfileRemoveLogoType EventType.team_profile_remove_logo:
        (team_profile) Removed team logo displayed on shared link headers
    :ivar TfaAddBackupPhoneType EventType.tfa_add_backup_phone: (tfa) Added
        backup phone for two-step verification
    :ivar TfaAddSecurityKeyType EventType.tfa_add_security_key: (tfa) Added
        security key for two-step verification
    :ivar TfaChangeBackupPhoneType EventType.tfa_change_backup_phone: (tfa)
        Changed backup phone for two-step verification
    :ivar TfaChangeStatusType EventType.tfa_change_status: (tfa)
        Enabled/disabled/changed two-step verification setting
    :ivar TfaRemoveBackupPhoneType EventType.tfa_remove_backup_phone: (tfa)
        Removed backup phone for two-step verification
    :ivar TfaRemoveSecurityKeyType EventType.tfa_remove_security_key: (tfa)
        Removed security key for two-step verification
    :ivar TfaResetType EventType.tfa_reset: (tfa) Reset two-step verification
        for team member
    :ivar ChangedEnterpriseAdminRoleType
        EventType.changed_enterprise_admin_role: (trusted_teams) Changed
        enterprise admin role
    :ivar ChangedEnterpriseConnectedTeamStatusType
        EventType.changed_enterprise_connected_team_status: (trusted_teams)
        Changed enterprise-connected team status
    :ivar EndedEnterpriseAdminSessionType
        EventType.ended_enterprise_admin_session: (trusted_teams) Ended
        enterprise admin session
    :ivar EndedEnterpriseAdminSessionDeprecatedType
        EventType.ended_enterprise_admin_session_deprecated: (trusted_teams)
        Ended enterprise admin session (deprecated, replaced by 'Ended
        enterprise admin session')
    :ivar EnterpriseSettingsLockingType EventType.enterprise_settings_locking:
        (trusted_teams) Changed who can update a setting
    :ivar GuestAdminChangeStatusType EventType.guest_admin_change_status:
        (trusted_teams) Changed guest team admin status
    :ivar StartedEnterpriseAdminSessionType
        EventType.started_enterprise_admin_session: (trusted_teams) Started
        enterprise admin session
    :ivar TeamMergeRequestAcceptedType EventType.team_merge_request_accepted:
        (trusted_teams) Accepted a team merge request
    :ivar TeamMergeRequestAcceptedShownToPrimaryTeamType
        EventType.team_merge_request_accepted_shown_to_primary_team:
        (trusted_teams) Accepted a team merge request (deprecated, replaced by
        'Accepted a team merge request')
    :ivar TeamMergeRequestAcceptedShownToSecondaryTeamType
        EventType.team_merge_request_accepted_shown_to_secondary_team:
        (trusted_teams) Accepted a team merge request (deprecated, replaced by
        'Accepted a team merge request')
    :ivar TeamMergeRequestAutoCanceledType
        EventType.team_merge_request_auto_canceled: (trusted_teams)
        Automatically canceled team merge request
    :ivar TeamMergeRequestCanceledType EventType.team_merge_request_canceled:
        (trusted_teams) Canceled a team merge request
    :ivar TeamMergeRequestCanceledShownToPrimaryTeamType
        EventType.team_merge_request_canceled_shown_to_primary_team:
        (trusted_teams) Canceled a team merge request (deprecated, replaced by
        'Canceled a team merge request')
    :ivar TeamMergeRequestCanceledShownToSecondaryTeamType
        EventType.team_merge_request_canceled_shown_to_secondary_team:
        (trusted_teams) Canceled a team merge request (deprecated, replaced by
        'Canceled a team merge request')
    :ivar TeamMergeRequestExpiredType EventType.team_merge_request_expired:
        (trusted_teams) Team merge request expired
    :ivar TeamMergeRequestExpiredShownToPrimaryTeamType
        EventType.team_merge_request_expired_shown_to_primary_team:
        (trusted_teams) Team merge request expired (deprecated, replaced by
        'Team merge request expired')
    :ivar TeamMergeRequestExpiredShownToSecondaryTeamType
        EventType.team_merge_request_expired_shown_to_secondary_team:
        (trusted_teams) Team merge request expired (deprecated, replaced by
        'Team merge request expired')
    :ivar TeamMergeRequestRejectedShownToPrimaryTeamType
        EventType.team_merge_request_rejected_shown_to_primary_team:
        (trusted_teams) Rejected a team merge request (deprecated, no longer
        logged)
    :ivar TeamMergeRequestRejectedShownToSecondaryTeamType
        EventType.team_merge_request_rejected_shown_to_secondary_team:
        (trusted_teams) Rejected a team merge request (deprecated, no longer
        logged)
    :ivar TeamMergeRequestReminderType EventType.team_merge_request_reminder:
        (trusted_teams) Sent a team merge request reminder
    :ivar TeamMergeRequestReminderShownToPrimaryTeamType
        EventType.team_merge_request_reminder_shown_to_primary_team:
        (trusted_teams) Sent a team merge request reminder (deprecated, replaced
        by 'Sent a team merge request reminder')
    :ivar TeamMergeRequestReminderShownToSecondaryTeamType
        EventType.team_merge_request_reminder_shown_to_secondary_team:
        (trusted_teams) Sent a team merge request reminder (deprecated, replaced
        by 'Sent a team merge request reminder')
    :ivar TeamMergeRequestRevokedType EventType.team_merge_request_revoked:
        (trusted_teams) Canceled the team merge
    :ivar TeamMergeRequestSentShownToPrimaryTeamType
        EventType.team_merge_request_sent_shown_to_primary_team: (trusted_teams)
        Requested to merge their Dropbox team into yours
    :ivar TeamMergeRequestSentShownToSecondaryTeamType
        EventType.team_merge_request_sent_shown_to_secondary_team:
        (trusted_teams) Requested to merge your team into another Dropbox team
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def admin_alerting_alert_state_changed(cls, val):
        """
        Create an instance of this class set to the
        ``admin_alerting_alert_state_changed`` tag with value ``val``.

        :param AdminAlertingAlertStateChangedType val:
        :rtype: EventType
        """
        return cls('admin_alerting_alert_state_changed', val)

    @classmethod
    def admin_alerting_changed_alert_config(cls, val):
        """
        Create an instance of this class set to the
        ``admin_alerting_changed_alert_config`` tag with value ``val``.

        :param AdminAlertingChangedAlertConfigType val:
        :rtype: EventType
        """
        return cls('admin_alerting_changed_alert_config', val)

    @classmethod
    def admin_alerting_triggered_alert(cls, val):
        """
        Create an instance of this class set to the
        ``admin_alerting_triggered_alert`` tag with value ``val``.

        :param AdminAlertingTriggeredAlertType val:
        :rtype: EventType
        """
        return cls('admin_alerting_triggered_alert', val)

    @classmethod
    def app_blocked_by_permissions(cls, val):
        """
        Create an instance of this class set to the
        ``app_blocked_by_permissions`` tag with value ``val``.

        :param AppBlockedByPermissionsType val:
        :rtype: EventType
        """
        return cls('app_blocked_by_permissions', val)

    @classmethod
    def app_link_team(cls, val):
        """
        Create an instance of this class set to the ``app_link_team`` tag with
        value ``val``.

        :param AppLinkTeamType val:
        :rtype: EventType
        """
        return cls('app_link_team', val)

    @classmethod
    def app_link_user(cls, val):
        """
        Create an instance of this class set to the ``app_link_user`` tag with
        value ``val``.

        :param AppLinkUserType val:
        :rtype: EventType
        """
        return cls('app_link_user', val)

    @classmethod
    def app_unlink_team(cls, val):
        """
        Create an instance of this class set to the ``app_unlink_team`` tag with
        value ``val``.

        :param AppUnlinkTeamType val:
        :rtype: EventType
        """
        return cls('app_unlink_team', val)

    @classmethod
    def app_unlink_user(cls, val):
        """
        Create an instance of this class set to the ``app_unlink_user`` tag with
        value ``val``.

        :param AppUnlinkUserType val:
        :rtype: EventType
        """
        return cls('app_unlink_user', val)

    @classmethod
    def integration_connected(cls, val):
        """
        Create an instance of this class set to the ``integration_connected``
        tag with value ``val``.

        :param IntegrationConnectedType val:
        :rtype: EventType
        """
        return cls('integration_connected', val)

    @classmethod
    def integration_disconnected(cls, val):
        """
        Create an instance of this class set to the ``integration_disconnected``
        tag with value ``val``.

        :param IntegrationDisconnectedType val:
        :rtype: EventType
        """
        return cls('integration_disconnected', val)

    @classmethod
    def file_add_comment(cls, val):
        """
        Create an instance of this class set to the ``file_add_comment`` tag
        with value ``val``.

        :param FileAddCommentType val:
        :rtype: EventType
        """
        return cls('file_add_comment', val)

    @classmethod
    def file_change_comment_subscription(cls, val):
        """
        Create an instance of this class set to the
        ``file_change_comment_subscription`` tag with value ``val``.

        :param FileChangeCommentSubscriptionType val:
        :rtype: EventType
        """
        return cls('file_change_comment_subscription', val)

    @classmethod
    def file_delete_comment(cls, val):
        """
        Create an instance of this class set to the ``file_delete_comment`` tag
        with value ``val``.

        :param FileDeleteCommentType val:
        :rtype: EventType
        """
        return cls('file_delete_comment', val)

    @classmethod
    def file_edit_comment(cls, val):
        """
        Create an instance of this class set to the ``file_edit_comment`` tag
        with value ``val``.

        :param FileEditCommentType val:
        :rtype: EventType
        """
        return cls('file_edit_comment', val)

    @classmethod
    def file_like_comment(cls, val):
        """
        Create an instance of this class set to the ``file_like_comment`` tag
        with value ``val``.

        :param FileLikeCommentType val:
        :rtype: EventType
        """
        return cls('file_like_comment', val)

    @classmethod
    def file_resolve_comment(cls, val):
        """
        Create an instance of this class set to the ``file_resolve_comment`` tag
        with value ``val``.

        :param FileResolveCommentType val:
        :rtype: EventType
        """
        return cls('file_resolve_comment', val)

    @classmethod
    def file_unlike_comment(cls, val):
        """
        Create an instance of this class set to the ``file_unlike_comment`` tag
        with value ``val``.

        :param FileUnlikeCommentType val:
        :rtype: EventType
        """
        return cls('file_unlike_comment', val)

    @classmethod
    def file_unresolve_comment(cls, val):
        """
        Create an instance of this class set to the ``file_unresolve_comment``
        tag with value ``val``.

        :param FileUnresolveCommentType val:
        :rtype: EventType
        """
        return cls('file_unresolve_comment', val)

    @classmethod
    def governance_policy_add_folders(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_add_folders`` tag with value ``val``.

        :param GovernancePolicyAddFoldersType val:
        :rtype: EventType
        """
        return cls('governance_policy_add_folders', val)

    @classmethod
    def governance_policy_add_folder_failed(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_add_folder_failed`` tag with value ``val``.

        :param GovernancePolicyAddFolderFailedType val:
        :rtype: EventType
        """
        return cls('governance_policy_add_folder_failed', val)

    @classmethod
    def governance_policy_content_disposed(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_content_disposed`` tag with value ``val``.

        :param GovernancePolicyContentDisposedType val:
        :rtype: EventType
        """
        return cls('governance_policy_content_disposed', val)

    @classmethod
    def governance_policy_create(cls, val):
        """
        Create an instance of this class set to the ``governance_policy_create``
        tag with value ``val``.

        :param GovernancePolicyCreateType val:
        :rtype: EventType
        """
        return cls('governance_policy_create', val)

    @classmethod
    def governance_policy_delete(cls, val):
        """
        Create an instance of this class set to the ``governance_policy_delete``
        tag with value ``val``.

        :param GovernancePolicyDeleteType val:
        :rtype: EventType
        """
        return cls('governance_policy_delete', val)

    @classmethod
    def governance_policy_edit_details(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_edit_details`` tag with value ``val``.

        :param GovernancePolicyEditDetailsType val:
        :rtype: EventType
        """
        return cls('governance_policy_edit_details', val)

    @classmethod
    def governance_policy_edit_duration(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_edit_duration`` tag with value ``val``.

        :param GovernancePolicyEditDurationType val:
        :rtype: EventType
        """
        return cls('governance_policy_edit_duration', val)

    @classmethod
    def governance_policy_export_created(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_export_created`` tag with value ``val``.

        :param GovernancePolicyExportCreatedType val:
        :rtype: EventType
        """
        return cls('governance_policy_export_created', val)

    @classmethod
    def governance_policy_export_removed(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_export_removed`` tag with value ``val``.

        :param GovernancePolicyExportRemovedType val:
        :rtype: EventType
        """
        return cls('governance_policy_export_removed', val)

    @classmethod
    def governance_policy_remove_folders(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_remove_folders`` tag with value ``val``.

        :param GovernancePolicyRemoveFoldersType val:
        :rtype: EventType
        """
        return cls('governance_policy_remove_folders', val)

    @classmethod
    def governance_policy_report_created(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_report_created`` tag with value ``val``.

        :param GovernancePolicyReportCreatedType val:
        :rtype: EventType
        """
        return cls('governance_policy_report_created', val)

    @classmethod
    def governance_policy_zip_part_downloaded(cls, val):
        """
        Create an instance of this class set to the
        ``governance_policy_zip_part_downloaded`` tag with value ``val``.

        :param GovernancePolicyZipPartDownloadedType val:
        :rtype: EventType
        """
        return cls('governance_policy_zip_part_downloaded', val)

    @classmethod
    def legal_holds_activate_a_hold(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_activate_a_hold`` tag with value ``val``.

        :param LegalHoldsActivateAHoldType val:
        :rtype: EventType
        """
        return cls('legal_holds_activate_a_hold', val)

    @classmethod
    def legal_holds_add_members(cls, val):
        """
        Create an instance of this class set to the ``legal_holds_add_members``
        tag with value ``val``.

        :param LegalHoldsAddMembersType val:
        :rtype: EventType
        """
        return cls('legal_holds_add_members', val)

    @classmethod
    def legal_holds_change_hold_details(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_change_hold_details`` tag with value ``val``.

        :param LegalHoldsChangeHoldDetailsType val:
        :rtype: EventType
        """
        return cls('legal_holds_change_hold_details', val)

    @classmethod
    def legal_holds_change_hold_name(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_change_hold_name`` tag with value ``val``.

        :param LegalHoldsChangeHoldNameType val:
        :rtype: EventType
        """
        return cls('legal_holds_change_hold_name', val)

    @classmethod
    def legal_holds_export_a_hold(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_a_hold`` tag with value ``val``.

        :param LegalHoldsExportAHoldType val:
        :rtype: EventType
        """
        return cls('legal_holds_export_a_hold', val)

    @classmethod
    def legal_holds_export_cancelled(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_cancelled`` tag with value ``val``.

        :param LegalHoldsExportCancelledType val:
        :rtype: EventType
        """
        return cls('legal_holds_export_cancelled', val)

    @classmethod
    def legal_holds_export_downloaded(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_downloaded`` tag with value ``val``.

        :param LegalHoldsExportDownloadedType val:
        :rtype: EventType
        """
        return cls('legal_holds_export_downloaded', val)

    @classmethod
    def legal_holds_export_removed(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_export_removed`` tag with value ``val``.

        :param LegalHoldsExportRemovedType val:
        :rtype: EventType
        """
        return cls('legal_holds_export_removed', val)

    @classmethod
    def legal_holds_release_a_hold(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_release_a_hold`` tag with value ``val``.

        :param LegalHoldsReleaseAHoldType val:
        :rtype: EventType
        """
        return cls('legal_holds_release_a_hold', val)

    @classmethod
    def legal_holds_remove_members(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_remove_members`` tag with value ``val``.

        :param LegalHoldsRemoveMembersType val:
        :rtype: EventType
        """
        return cls('legal_holds_remove_members', val)

    @classmethod
    def legal_holds_report_a_hold(cls, val):
        """
        Create an instance of this class set to the
        ``legal_holds_report_a_hold`` tag with value ``val``.

        :param LegalHoldsReportAHoldType val:
        :rtype: EventType
        """
        return cls('legal_holds_report_a_hold', val)

    @classmethod
    def device_change_ip_desktop(cls, val):
        """
        Create an instance of this class set to the ``device_change_ip_desktop``
        tag with value ``val``.

        :param DeviceChangeIpDesktopType val:
        :rtype: EventType
        """
        return cls('device_change_ip_desktop', val)

    @classmethod
    def device_change_ip_mobile(cls, val):
        """
        Create an instance of this class set to the ``device_change_ip_mobile``
        tag with value ``val``.

        :param DeviceChangeIpMobileType val:
        :rtype: EventType
        """
        return cls('device_change_ip_mobile', val)

    @classmethod
    def device_change_ip_web(cls, val):
        """
        Create an instance of this class set to the ``device_change_ip_web`` tag
        with value ``val``.

        :param DeviceChangeIpWebType val:
        :rtype: EventType
        """
        return cls('device_change_ip_web', val)

    @classmethod
    def device_delete_on_unlink_fail(cls, val):
        """
        Create an instance of this class set to the
        ``device_delete_on_unlink_fail`` tag with value ``val``.

        :param DeviceDeleteOnUnlinkFailType val:
        :rtype: EventType
        """
        return cls('device_delete_on_unlink_fail', val)

    @classmethod
    def device_delete_on_unlink_success(cls, val):
        """
        Create an instance of this class set to the
        ``device_delete_on_unlink_success`` tag with value ``val``.

        :param DeviceDeleteOnUnlinkSuccessType val:
        :rtype: EventType
        """
        return cls('device_delete_on_unlink_success', val)

    @classmethod
    def device_link_fail(cls, val):
        """
        Create an instance of this class set to the ``device_link_fail`` tag
        with value ``val``.

        :param DeviceLinkFailType val:
        :rtype: EventType
        """
        return cls('device_link_fail', val)

    @classmethod
    def device_link_success(cls, val):
        """
        Create an instance of this class set to the ``device_link_success`` tag
        with value ``val``.

        :param DeviceLinkSuccessType val:
        :rtype: EventType
        """
        return cls('device_link_success', val)

    @classmethod
    def device_management_disabled(cls, val):
        """
        Create an instance of this class set to the
        ``device_management_disabled`` tag with value ``val``.

        :param DeviceManagementDisabledType val:
        :rtype: EventType
        """
        return cls('device_management_disabled', val)

    @classmethod
    def device_management_enabled(cls, val):
        """
        Create an instance of this class set to the
        ``device_management_enabled`` tag with value ``val``.

        :param DeviceManagementEnabledType val:
        :rtype: EventType
        """
        return cls('device_management_enabled', val)

    @classmethod
    def device_sync_backup_status_changed(cls, val):
        """
        Create an instance of this class set to the
        ``device_sync_backup_status_changed`` tag with value ``val``.

        :param DeviceSyncBackupStatusChangedType val:
        :rtype: EventType
        """
        return cls('device_sync_backup_status_changed', val)

    @classmethod
    def device_unlink(cls, val):
        """
        Create an instance of this class set to the ``device_unlink`` tag with
        value ``val``.

        :param DeviceUnlinkType val:
        :rtype: EventType
        """
        return cls('device_unlink', val)

    @classmethod
    def dropbox_passwords_exported(cls, val):
        """
        Create an instance of this class set to the
        ``dropbox_passwords_exported`` tag with value ``val``.

        :param DropboxPasswordsExportedType val:
        :rtype: EventType
        """
        return cls('dropbox_passwords_exported', val)

    @classmethod
    def dropbox_passwords_new_device_enrolled(cls, val):
        """
        Create an instance of this class set to the
        ``dropbox_passwords_new_device_enrolled`` tag with value ``val``.

        :param DropboxPasswordsNewDeviceEnrolledType val:
        :rtype: EventType
        """
        return cls('dropbox_passwords_new_device_enrolled', val)

    @classmethod
    def emm_refresh_auth_token(cls, val):
        """
        Create an instance of this class set to the ``emm_refresh_auth_token``
        tag with value ``val``.

        :param EmmRefreshAuthTokenType val:
        :rtype: EventType
        """
        return cls('emm_refresh_auth_token', val)

    @classmethod
    def external_drive_backup_eligibility_status_checked(cls, val):
        """
        Create an instance of this class set to the
        ``external_drive_backup_eligibility_status_checked`` tag with value
        ``val``.

        :param ExternalDriveBackupEligibilityStatusCheckedType val:
        :rtype: EventType
        """
        return cls('external_drive_backup_eligibility_status_checked', val)

    @classmethod
    def external_drive_backup_status_changed(cls, val):
        """
        Create an instance of this class set to the
        ``external_drive_backup_status_changed`` tag with value ``val``.

        :param ExternalDriveBackupStatusChangedType val:
        :rtype: EventType
        """
        return cls('external_drive_backup_status_changed', val)

    @classmethod
    def account_capture_change_availability(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_change_availability`` tag with value ``val``.

        :param AccountCaptureChangeAvailabilityType val:
        :rtype: EventType
        """
        return cls('account_capture_change_availability', val)

    @classmethod
    def account_capture_migrate_account(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_migrate_account`` tag with value ``val``.

        :param AccountCaptureMigrateAccountType val:
        :rtype: EventType
        """
        return cls('account_capture_migrate_account', val)

    @classmethod
    def account_capture_notification_emails_sent(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_notification_emails_sent`` tag with value ``val``.

        :param AccountCaptureNotificationEmailsSentType val:
        :rtype: EventType
        """
        return cls('account_capture_notification_emails_sent', val)

    @classmethod
    def account_capture_relinquish_account(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_relinquish_account`` tag with value ``val``.

        :param AccountCaptureRelinquishAccountType val:
        :rtype: EventType
        """
        return cls('account_capture_relinquish_account', val)

    @classmethod
    def disabled_domain_invites(cls, val):
        """
        Create an instance of this class set to the ``disabled_domain_invites``
        tag with value ``val``.

        :param DisabledDomainInvitesType val:
        :rtype: EventType
        """
        return cls('disabled_domain_invites', val)

    @classmethod
    def domain_invites_approve_request_to_join_team(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_approve_request_to_join_team`` tag with value ``val``.

        :param DomainInvitesApproveRequestToJoinTeamType val:
        :rtype: EventType
        """
        return cls('domain_invites_approve_request_to_join_team', val)

    @classmethod
    def domain_invites_decline_request_to_join_team(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_decline_request_to_join_team`` tag with value ``val``.

        :param DomainInvitesDeclineRequestToJoinTeamType val:
        :rtype: EventType
        """
        return cls('domain_invites_decline_request_to_join_team', val)

    @classmethod
    def domain_invites_email_existing_users(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_email_existing_users`` tag with value ``val``.

        :param DomainInvitesEmailExistingUsersType val:
        :rtype: EventType
        """
        return cls('domain_invites_email_existing_users', val)

    @classmethod
    def domain_invites_request_to_join_team(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_request_to_join_team`` tag with value ``val``.

        :param DomainInvitesRequestToJoinTeamType val:
        :rtype: EventType
        """
        return cls('domain_invites_request_to_join_team', val)

    @classmethod
    def domain_invites_set_invite_new_user_pref_to_no(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_set_invite_new_user_pref_to_no`` tag with value
        ``val``.

        :param DomainInvitesSetInviteNewUserPrefToNoType val:
        :rtype: EventType
        """
        return cls('domain_invites_set_invite_new_user_pref_to_no', val)

    @classmethod
    def domain_invites_set_invite_new_user_pref_to_yes(cls, val):
        """
        Create an instance of this class set to the
        ``domain_invites_set_invite_new_user_pref_to_yes`` tag with value
        ``val``.

        :param DomainInvitesSetInviteNewUserPrefToYesType val:
        :rtype: EventType
        """
        return cls('domain_invites_set_invite_new_user_pref_to_yes', val)

    @classmethod
    def domain_verification_add_domain_fail(cls, val):
        """
        Create an instance of this class set to the
        ``domain_verification_add_domain_fail`` tag with value ``val``.

        :param DomainVerificationAddDomainFailType val:
        :rtype: EventType
        """
        return cls('domain_verification_add_domain_fail', val)

    @classmethod
    def domain_verification_add_domain_success(cls, val):
        """
        Create an instance of this class set to the
        ``domain_verification_add_domain_success`` tag with value ``val``.

        :param DomainVerificationAddDomainSuccessType val:
        :rtype: EventType
        """
        return cls('domain_verification_add_domain_success', val)

    @classmethod
    def domain_verification_remove_domain(cls, val):
        """
        Create an instance of this class set to the
        ``domain_verification_remove_domain`` tag with value ``val``.

        :param DomainVerificationRemoveDomainType val:
        :rtype: EventType
        """
        return cls('domain_verification_remove_domain', val)

    @classmethod
    def enabled_domain_invites(cls, val):
        """
        Create an instance of this class set to the ``enabled_domain_invites``
        tag with value ``val``.

        :param EnabledDomainInvitesType val:
        :rtype: EventType
        """
        return cls('enabled_domain_invites', val)

    @classmethod
    def apply_naming_convention(cls, val):
        """
        Create an instance of this class set to the ``apply_naming_convention``
        tag with value ``val``.

        :param ApplyNamingConventionType val:
        :rtype: EventType
        """
        return cls('apply_naming_convention', val)

    @classmethod
    def create_folder(cls, val):
        """
        Create an instance of this class set to the ``create_folder`` tag with
        value ``val``.

        :param CreateFolderType val:
        :rtype: EventType
        """
        return cls('create_folder', val)

    @classmethod
    def file_add(cls, val):
        """
        Create an instance of this class set to the ``file_add`` tag with value
        ``val``.

        :param FileAddType val:
        :rtype: EventType
        """
        return cls('file_add', val)

    @classmethod
    def file_copy(cls, val):
        """
        Create an instance of this class set to the ``file_copy`` tag with value
        ``val``.

        :param FileCopyType val:
        :rtype: EventType
        """
        return cls('file_copy', val)

    @classmethod
    def file_delete(cls, val):
        """
        Create an instance of this class set to the ``file_delete`` tag with
        value ``val``.

        :param FileDeleteType val:
        :rtype: EventType
        """
        return cls('file_delete', val)

    @classmethod
    def file_download(cls, val):
        """
        Create an instance of this class set to the ``file_download`` tag with
        value ``val``.

        :param FileDownloadType val:
        :rtype: EventType
        """
        return cls('file_download', val)

    @classmethod
    def file_edit(cls, val):
        """
        Create an instance of this class set to the ``file_edit`` tag with value
        ``val``.

        :param FileEditType val:
        :rtype: EventType
        """
        return cls('file_edit', val)

    @classmethod
    def file_get_copy_reference(cls, val):
        """
        Create an instance of this class set to the ``file_get_copy_reference``
        tag with value ``val``.

        :param FileGetCopyReferenceType val:
        :rtype: EventType
        """
        return cls('file_get_copy_reference', val)

    @classmethod
    def file_locking_lock_status_changed(cls, val):
        """
        Create an instance of this class set to the
        ``file_locking_lock_status_changed`` tag with value ``val``.

        :param FileLockingLockStatusChangedType val:
        :rtype: EventType
        """
        return cls('file_locking_lock_status_changed', val)

    @classmethod
    def file_move(cls, val):
        """
        Create an instance of this class set to the ``file_move`` tag with value
        ``val``.

        :param FileMoveType val:
        :rtype: EventType
        """
        return cls('file_move', val)

    @classmethod
    def file_permanently_delete(cls, val):
        """
        Create an instance of this class set to the ``file_permanently_delete``
        tag with value ``val``.

        :param FilePermanentlyDeleteType val:
        :rtype: EventType
        """
        return cls('file_permanently_delete', val)

    @classmethod
    def file_preview(cls, val):
        """
        Create an instance of this class set to the ``file_preview`` tag with
        value ``val``.

        :param FilePreviewType val:
        :rtype: EventType
        """
        return cls('file_preview', val)

    @classmethod
    def file_rename(cls, val):
        """
        Create an instance of this class set to the ``file_rename`` tag with
        value ``val``.

        :param FileRenameType val:
        :rtype: EventType
        """
        return cls('file_rename', val)

    @classmethod
    def file_restore(cls, val):
        """
        Create an instance of this class set to the ``file_restore`` tag with
        value ``val``.

        :param FileRestoreType val:
        :rtype: EventType
        """
        return cls('file_restore', val)

    @classmethod
    def file_revert(cls, val):
        """
        Create an instance of this class set to the ``file_revert`` tag with
        value ``val``.

        :param FileRevertType val:
        :rtype: EventType
        """
        return cls('file_revert', val)

    @classmethod
    def file_rollback_changes(cls, val):
        """
        Create an instance of this class set to the ``file_rollback_changes``
        tag with value ``val``.

        :param FileRollbackChangesType val:
        :rtype: EventType
        """
        return cls('file_rollback_changes', val)

    @classmethod
    def file_save_copy_reference(cls, val):
        """
        Create an instance of this class set to the ``file_save_copy_reference``
        tag with value ``val``.

        :param FileSaveCopyReferenceType val:
        :rtype: EventType
        """
        return cls('file_save_copy_reference', val)

    @classmethod
    def folder_overview_description_changed(cls, val):
        """
        Create an instance of this class set to the
        ``folder_overview_description_changed`` tag with value ``val``.

        :param FolderOverviewDescriptionChangedType val:
        :rtype: EventType
        """
        return cls('folder_overview_description_changed', val)

    @classmethod
    def folder_overview_item_pinned(cls, val):
        """
        Create an instance of this class set to the
        ``folder_overview_item_pinned`` tag with value ``val``.

        :param FolderOverviewItemPinnedType val:
        :rtype: EventType
        """
        return cls('folder_overview_item_pinned', val)

    @classmethod
    def folder_overview_item_unpinned(cls, val):
        """
        Create an instance of this class set to the
        ``folder_overview_item_unpinned`` tag with value ``val``.

        :param FolderOverviewItemUnpinnedType val:
        :rtype: EventType
        """
        return cls('folder_overview_item_unpinned', val)

    @classmethod
    def object_label_added(cls, val):
        """
        Create an instance of this class set to the ``object_label_added`` tag
        with value ``val``.

        :param ObjectLabelAddedType val:
        :rtype: EventType
        """
        return cls('object_label_added', val)

    @classmethod
    def object_label_removed(cls, val):
        """
        Create an instance of this class set to the ``object_label_removed`` tag
        with value ``val``.

        :param ObjectLabelRemovedType val:
        :rtype: EventType
        """
        return cls('object_label_removed', val)

    @classmethod
    def object_label_updated_value(cls, val):
        """
        Create an instance of this class set to the
        ``object_label_updated_value`` tag with value ``val``.

        :param ObjectLabelUpdatedValueType val:
        :rtype: EventType
        """
        return cls('object_label_updated_value', val)

    @classmethod
    def organize_folder_with_tidy(cls, val):
        """
        Create an instance of this class set to the
        ``organize_folder_with_tidy`` tag with value ``val``.

        :param OrganizeFolderWithTidyType val:
        :rtype: EventType
        """
        return cls('organize_folder_with_tidy', val)

    @classmethod
    def rewind_folder(cls, val):
        """
        Create an instance of this class set to the ``rewind_folder`` tag with
        value ``val``.

        :param RewindFolderType val:
        :rtype: EventType
        """
        return cls('rewind_folder', val)

    @classmethod
    def undo_naming_convention(cls, val):
        """
        Create an instance of this class set to the ``undo_naming_convention``
        tag with value ``val``.

        :param UndoNamingConventionType val:
        :rtype: EventType
        """
        return cls('undo_naming_convention', val)

    @classmethod
    def undo_organize_folder_with_tidy(cls, val):
        """
        Create an instance of this class set to the
        ``undo_organize_folder_with_tidy`` tag with value ``val``.

        :param UndoOrganizeFolderWithTidyType val:
        :rtype: EventType
        """
        return cls('undo_organize_folder_with_tidy', val)

    @classmethod
    def user_tags_added(cls, val):
        """
        Create an instance of this class set to the ``user_tags_added`` tag with
        value ``val``.

        :param UserTagsAddedType val:
        :rtype: EventType
        """
        return cls('user_tags_added', val)

    @classmethod
    def user_tags_removed(cls, val):
        """
        Create an instance of this class set to the ``user_tags_removed`` tag
        with value ``val``.

        :param UserTagsRemovedType val:
        :rtype: EventType
        """
        return cls('user_tags_removed', val)

    @classmethod
    def email_ingest_receive_file(cls, val):
        """
        Create an instance of this class set to the
        ``email_ingest_receive_file`` tag with value ``val``.

        :param EmailIngestReceiveFileType val:
        :rtype: EventType
        """
        return cls('email_ingest_receive_file', val)

    @classmethod
    def file_request_change(cls, val):
        """
        Create an instance of this class set to the ``file_request_change`` tag
        with value ``val``.

        :param FileRequestChangeType val:
        :rtype: EventType
        """
        return cls('file_request_change', val)

    @classmethod
    def file_request_close(cls, val):
        """
        Create an instance of this class set to the ``file_request_close`` tag
        with value ``val``.

        :param FileRequestCloseType val:
        :rtype: EventType
        """
        return cls('file_request_close', val)

    @classmethod
    def file_request_create(cls, val):
        """
        Create an instance of this class set to the ``file_request_create`` tag
        with value ``val``.

        :param FileRequestCreateType val:
        :rtype: EventType
        """
        return cls('file_request_create', val)

    @classmethod
    def file_request_delete(cls, val):
        """
        Create an instance of this class set to the ``file_request_delete`` tag
        with value ``val``.

        :param FileRequestDeleteType val:
        :rtype: EventType
        """
        return cls('file_request_delete', val)

    @classmethod
    def file_request_receive_file(cls, val):
        """
        Create an instance of this class set to the
        ``file_request_receive_file`` tag with value ``val``.

        :param FileRequestReceiveFileType val:
        :rtype: EventType
        """
        return cls('file_request_receive_file', val)

    @classmethod
    def group_add_external_id(cls, val):
        """
        Create an instance of this class set to the ``group_add_external_id``
        tag with value ``val``.

        :param GroupAddExternalIdType val:
        :rtype: EventType
        """
        return cls('group_add_external_id', val)

    @classmethod
    def group_add_member(cls, val):
        """
        Create an instance of this class set to the ``group_add_member`` tag
        with value ``val``.

        :param GroupAddMemberType val:
        :rtype: EventType
        """
        return cls('group_add_member', val)

    @classmethod
    def group_change_external_id(cls, val):
        """
        Create an instance of this class set to the ``group_change_external_id``
        tag with value ``val``.

        :param GroupChangeExternalIdType val:
        :rtype: EventType
        """
        return cls('group_change_external_id', val)

    @classmethod
    def group_change_management_type(cls, val):
        """
        Create an instance of this class set to the
        ``group_change_management_type`` tag with value ``val``.

        :param GroupChangeManagementTypeType val:
        :rtype: EventType
        """
        return cls('group_change_management_type', val)

    @classmethod
    def group_change_member_role(cls, val):
        """
        Create an instance of this class set to the ``group_change_member_role``
        tag with value ``val``.

        :param GroupChangeMemberRoleType val:
        :rtype: EventType
        """
        return cls('group_change_member_role', val)

    @classmethod
    def group_create(cls, val):
        """
        Create an instance of this class set to the ``group_create`` tag with
        value ``val``.

        :param GroupCreateType val:
        :rtype: EventType
        """
        return cls('group_create', val)

    @classmethod
    def group_delete(cls, val):
        """
        Create an instance of this class set to the ``group_delete`` tag with
        value ``val``.

        :param GroupDeleteType val:
        :rtype: EventType
        """
        return cls('group_delete', val)

    @classmethod
    def group_description_updated(cls, val):
        """
        Create an instance of this class set to the
        ``group_description_updated`` tag with value ``val``.

        :param GroupDescriptionUpdatedType val:
        :rtype: EventType
        """
        return cls('group_description_updated', val)

    @classmethod
    def group_join_policy_updated(cls, val):
        """
        Create an instance of this class set to the
        ``group_join_policy_updated`` tag with value ``val``.

        :param GroupJoinPolicyUpdatedType val:
        :rtype: EventType
        """
        return cls('group_join_policy_updated', val)

    @classmethod
    def group_moved(cls, val):
        """
        Create an instance of this class set to the ``group_moved`` tag with
        value ``val``.

        :param GroupMovedType val:
        :rtype: EventType
        """
        return cls('group_moved', val)

    @classmethod
    def group_remove_external_id(cls, val):
        """
        Create an instance of this class set to the ``group_remove_external_id``
        tag with value ``val``.

        :param GroupRemoveExternalIdType val:
        :rtype: EventType
        """
        return cls('group_remove_external_id', val)

    @classmethod
    def group_remove_member(cls, val):
        """
        Create an instance of this class set to the ``group_remove_member`` tag
        with value ``val``.

        :param GroupRemoveMemberType val:
        :rtype: EventType
        """
        return cls('group_remove_member', val)

    @classmethod
    def group_rename(cls, val):
        """
        Create an instance of this class set to the ``group_rename`` tag with
        value ``val``.

        :param GroupRenameType val:
        :rtype: EventType
        """
        return cls('group_rename', val)

    @classmethod
    def account_lock_or_unlocked(cls, val):
        """
        Create an instance of this class set to the ``account_lock_or_unlocked``
        tag with value ``val``.

        :param AccountLockOrUnlockedType val:
        :rtype: EventType
        """
        return cls('account_lock_or_unlocked', val)

    @classmethod
    def emm_error(cls, val):
        """
        Create an instance of this class set to the ``emm_error`` tag with value
        ``val``.

        :param EmmErrorType val:
        :rtype: EventType
        """
        return cls('emm_error', val)

    @classmethod
    def guest_admin_signed_in_via_trusted_teams(cls, val):
        """
        Create an instance of this class set to the
        ``guest_admin_signed_in_via_trusted_teams`` tag with value ``val``.

        :param GuestAdminSignedInViaTrustedTeamsType val:
        :rtype: EventType
        """
        return cls('guest_admin_signed_in_via_trusted_teams', val)

    @classmethod
    def guest_admin_signed_out_via_trusted_teams(cls, val):
        """
        Create an instance of this class set to the
        ``guest_admin_signed_out_via_trusted_teams`` tag with value ``val``.

        :param GuestAdminSignedOutViaTrustedTeamsType val:
        :rtype: EventType
        """
        return cls('guest_admin_signed_out_via_trusted_teams', val)

    @classmethod
    def login_fail(cls, val):
        """
        Create an instance of this class set to the ``login_fail`` tag with
        value ``val``.

        :param LoginFailType val:
        :rtype: EventType
        """
        return cls('login_fail', val)

    @classmethod
    def login_success(cls, val):
        """
        Create an instance of this class set to the ``login_success`` tag with
        value ``val``.

        :param LoginSuccessType val:
        :rtype: EventType
        """
        return cls('login_success', val)

    @classmethod
    def logout(cls, val):
        """
        Create an instance of this class set to the ``logout`` tag with value
        ``val``.

        :param LogoutType val:
        :rtype: EventType
        """
        return cls('logout', val)

    @classmethod
    def reseller_support_session_end(cls, val):
        """
        Create an instance of this class set to the
        ``reseller_support_session_end`` tag with value ``val``.

        :param ResellerSupportSessionEndType val:
        :rtype: EventType
        """
        return cls('reseller_support_session_end', val)

    @classmethod
    def reseller_support_session_start(cls, val):
        """
        Create an instance of this class set to the
        ``reseller_support_session_start`` tag with value ``val``.

        :param ResellerSupportSessionStartType val:
        :rtype: EventType
        """
        return cls('reseller_support_session_start', val)

    @classmethod
    def sign_in_as_session_end(cls, val):
        """
        Create an instance of this class set to the ``sign_in_as_session_end``
        tag with value ``val``.

        :param SignInAsSessionEndType val:
        :rtype: EventType
        """
        return cls('sign_in_as_session_end', val)

    @classmethod
    def sign_in_as_session_start(cls, val):
        """
        Create an instance of this class set to the ``sign_in_as_session_start``
        tag with value ``val``.

        :param SignInAsSessionStartType val:
        :rtype: EventType
        """
        return cls('sign_in_as_session_start', val)

    @classmethod
    def sso_error(cls, val):
        """
        Create an instance of this class set to the ``sso_error`` tag with value
        ``val``.

        :param SsoErrorType val:
        :rtype: EventType
        """
        return cls('sso_error', val)

    @classmethod
    def create_team_invite_link(cls, val):
        """
        Create an instance of this class set to the ``create_team_invite_link``
        tag with value ``val``.

        :param CreateTeamInviteLinkType val:
        :rtype: EventType
        """
        return cls('create_team_invite_link', val)

    @classmethod
    def delete_team_invite_link(cls, val):
        """
        Create an instance of this class set to the ``delete_team_invite_link``
        tag with value ``val``.

        :param DeleteTeamInviteLinkType val:
        :rtype: EventType
        """
        return cls('delete_team_invite_link', val)

    @classmethod
    def member_add_external_id(cls, val):
        """
        Create an instance of this class set to the ``member_add_external_id``
        tag with value ``val``.

        :param MemberAddExternalIdType val:
        :rtype: EventType
        """
        return cls('member_add_external_id', val)

    @classmethod
    def member_add_name(cls, val):
        """
        Create an instance of this class set to the ``member_add_name`` tag with
        value ``val``.

        :param MemberAddNameType val:
        :rtype: EventType
        """
        return cls('member_add_name', val)

    @classmethod
    def member_change_admin_role(cls, val):
        """
        Create an instance of this class set to the ``member_change_admin_role``
        tag with value ``val``.

        :param MemberChangeAdminRoleType val:
        :rtype: EventType
        """
        return cls('member_change_admin_role', val)

    @classmethod
    def member_change_email(cls, val):
        """
        Create an instance of this class set to the ``member_change_email`` tag
        with value ``val``.

        :param MemberChangeEmailType val:
        :rtype: EventType
        """
        return cls('member_change_email', val)

    @classmethod
    def member_change_external_id(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_external_id`` tag with value ``val``.

        :param MemberChangeExternalIdType val:
        :rtype: EventType
        """
        return cls('member_change_external_id', val)

    @classmethod
    def member_change_membership_type(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_membership_type`` tag with value ``val``.

        :param MemberChangeMembershipTypeType val:
        :rtype: EventType
        """
        return cls('member_change_membership_type', val)

    @classmethod
    def member_change_name(cls, val):
        """
        Create an instance of this class set to the ``member_change_name`` tag
        with value ``val``.

        :param MemberChangeNameType val:
        :rtype: EventType
        """
        return cls('member_change_name', val)

    @classmethod
    def member_change_reseller_role(cls, val):
        """
        Create an instance of this class set to the
        ``member_change_reseller_role`` tag with value ``val``.

        :param MemberChangeResellerRoleType val:
        :rtype: EventType
        """
        return cls('member_change_reseller_role', val)

    @classmethod
    def member_change_status(cls, val):
        """
        Create an instance of this class set to the ``member_change_status`` tag
        with value ``val``.

        :param MemberChangeStatusType val:
        :rtype: EventType
        """
        return cls('member_change_status', val)

    @classmethod
    def member_delete_manual_contacts(cls, val):
        """
        Create an instance of this class set to the
        ``member_delete_manual_contacts`` tag with value ``val``.

        :param MemberDeleteManualContactsType val:
        :rtype: EventType
        """
        return cls('member_delete_manual_contacts', val)

    @classmethod
    def member_delete_profile_photo(cls, val):
        """
        Create an instance of this class set to the
        ``member_delete_profile_photo`` tag with value ``val``.

        :param MemberDeleteProfilePhotoType val:
        :rtype: EventType
        """
        return cls('member_delete_profile_photo', val)

    @classmethod
    def member_permanently_delete_account_contents(cls, val):
        """
        Create an instance of this class set to the
        ``member_permanently_delete_account_contents`` tag with value ``val``.

        :param MemberPermanentlyDeleteAccountContentsType val:
        :rtype: EventType
        """
        return cls('member_permanently_delete_account_contents', val)

    @classmethod
    def member_remove_external_id(cls, val):
        """
        Create an instance of this class set to the
        ``member_remove_external_id`` tag with value ``val``.

        :param MemberRemoveExternalIdType val:
        :rtype: EventType
        """
        return cls('member_remove_external_id', val)

    @classmethod
    def member_set_profile_photo(cls, val):
        """
        Create an instance of this class set to the ``member_set_profile_photo``
        tag with value ``val``.

        :param MemberSetProfilePhotoType val:
        :rtype: EventType
        """
        return cls('member_set_profile_photo', val)

    @classmethod
    def member_space_limits_add_custom_quota(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_add_custom_quota`` tag with value ``val``.

        :param MemberSpaceLimitsAddCustomQuotaType val:
        :rtype: EventType
        """
        return cls('member_space_limits_add_custom_quota', val)

    @classmethod
    def member_space_limits_change_custom_quota(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_custom_quota`` tag with value ``val``.

        :param MemberSpaceLimitsChangeCustomQuotaType val:
        :rtype: EventType
        """
        return cls('member_space_limits_change_custom_quota', val)

    @classmethod
    def member_space_limits_change_status(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_status`` tag with value ``val``.

        :param MemberSpaceLimitsChangeStatusType val:
        :rtype: EventType
        """
        return cls('member_space_limits_change_status', val)

    @classmethod
    def member_space_limits_remove_custom_quota(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_remove_custom_quota`` tag with value ``val``.

        :param MemberSpaceLimitsRemoveCustomQuotaType val:
        :rtype: EventType
        """
        return cls('member_space_limits_remove_custom_quota', val)

    @classmethod
    def member_suggest(cls, val):
        """
        Create an instance of this class set to the ``member_suggest`` tag with
        value ``val``.

        :param MemberSuggestType val:
        :rtype: EventType
        """
        return cls('member_suggest', val)

    @classmethod
    def member_transfer_account_contents(cls, val):
        """
        Create an instance of this class set to the
        ``member_transfer_account_contents`` tag with value ``val``.

        :param MemberTransferAccountContentsType val:
        :rtype: EventType
        """
        return cls('member_transfer_account_contents', val)

    @classmethod
    def pending_secondary_email_added(cls, val):
        """
        Create an instance of this class set to the
        ``pending_secondary_email_added`` tag with value ``val``.

        :param PendingSecondaryEmailAddedType val:
        :rtype: EventType
        """
        return cls('pending_secondary_email_added', val)

    @classmethod
    def secondary_email_deleted(cls, val):
        """
        Create an instance of this class set to the ``secondary_email_deleted``
        tag with value ``val``.

        :param SecondaryEmailDeletedType val:
        :rtype: EventType
        """
        return cls('secondary_email_deleted', val)

    @classmethod
    def secondary_email_verified(cls, val):
        """
        Create an instance of this class set to the ``secondary_email_verified``
        tag with value ``val``.

        :param SecondaryEmailVerifiedType val:
        :rtype: EventType
        """
        return cls('secondary_email_verified', val)

    @classmethod
    def secondary_mails_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``secondary_mails_policy_changed`` tag with value ``val``.

        :param SecondaryMailsPolicyChangedType val:
        :rtype: EventType
        """
        return cls('secondary_mails_policy_changed', val)

    @classmethod
    def binder_add_page(cls, val):
        """
        Create an instance of this class set to the ``binder_add_page`` tag with
        value ``val``.

        :param BinderAddPageType val:
        :rtype: EventType
        """
        return cls('binder_add_page', val)

    @classmethod
    def binder_add_section(cls, val):
        """
        Create an instance of this class set to the ``binder_add_section`` tag
        with value ``val``.

        :param BinderAddSectionType val:
        :rtype: EventType
        """
        return cls('binder_add_section', val)

    @classmethod
    def binder_remove_page(cls, val):
        """
        Create an instance of this class set to the ``binder_remove_page`` tag
        with value ``val``.

        :param BinderRemovePageType val:
        :rtype: EventType
        """
        return cls('binder_remove_page', val)

    @classmethod
    def binder_remove_section(cls, val):
        """
        Create an instance of this class set to the ``binder_remove_section``
        tag with value ``val``.

        :param BinderRemoveSectionType val:
        :rtype: EventType
        """
        return cls('binder_remove_section', val)

    @classmethod
    def binder_rename_page(cls, val):
        """
        Create an instance of this class set to the ``binder_rename_page`` tag
        with value ``val``.

        :param BinderRenamePageType val:
        :rtype: EventType
        """
        return cls('binder_rename_page', val)

    @classmethod
    def binder_rename_section(cls, val):
        """
        Create an instance of this class set to the ``binder_rename_section``
        tag with value ``val``.

        :param BinderRenameSectionType val:
        :rtype: EventType
        """
        return cls('binder_rename_section', val)

    @classmethod
    def binder_reorder_page(cls, val):
        """
        Create an instance of this class set to the ``binder_reorder_page`` tag
        with value ``val``.

        :param BinderReorderPageType val:
        :rtype: EventType
        """
        return cls('binder_reorder_page', val)

    @classmethod
    def binder_reorder_section(cls, val):
        """
        Create an instance of this class set to the ``binder_reorder_section``
        tag with value ``val``.

        :param BinderReorderSectionType val:
        :rtype: EventType
        """
        return cls('binder_reorder_section', val)

    @classmethod
    def paper_content_add_member(cls, val):
        """
        Create an instance of this class set to the ``paper_content_add_member``
        tag with value ``val``.

        :param PaperContentAddMemberType val:
        :rtype: EventType
        """
        return cls('paper_content_add_member', val)

    @classmethod
    def paper_content_add_to_folder(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_add_to_folder`` tag with value ``val``.

        :param PaperContentAddToFolderType val:
        :rtype: EventType
        """
        return cls('paper_content_add_to_folder', val)

    @classmethod
    def paper_content_archive(cls, val):
        """
        Create an instance of this class set to the ``paper_content_archive``
        tag with value ``val``.

        :param PaperContentArchiveType val:
        :rtype: EventType
        """
        return cls('paper_content_archive', val)

    @classmethod
    def paper_content_create(cls, val):
        """
        Create an instance of this class set to the ``paper_content_create`` tag
        with value ``val``.

        :param PaperContentCreateType val:
        :rtype: EventType
        """
        return cls('paper_content_create', val)

    @classmethod
    def paper_content_permanently_delete(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_permanently_delete`` tag with value ``val``.

        :param PaperContentPermanentlyDeleteType val:
        :rtype: EventType
        """
        return cls('paper_content_permanently_delete', val)

    @classmethod
    def paper_content_remove_from_folder(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_remove_from_folder`` tag with value ``val``.

        :param PaperContentRemoveFromFolderType val:
        :rtype: EventType
        """
        return cls('paper_content_remove_from_folder', val)

    @classmethod
    def paper_content_remove_member(cls, val):
        """
        Create an instance of this class set to the
        ``paper_content_remove_member`` tag with value ``val``.

        :param PaperContentRemoveMemberType val:
        :rtype: EventType
        """
        return cls('paper_content_remove_member', val)

    @classmethod
    def paper_content_rename(cls, val):
        """
        Create an instance of this class set to the ``paper_content_rename`` tag
        with value ``val``.

        :param PaperContentRenameType val:
        :rtype: EventType
        """
        return cls('paper_content_rename', val)

    @classmethod
    def paper_content_restore(cls, val):
        """
        Create an instance of this class set to the ``paper_content_restore``
        tag with value ``val``.

        :param PaperContentRestoreType val:
        :rtype: EventType
        """
        return cls('paper_content_restore', val)

    @classmethod
    def paper_doc_add_comment(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_add_comment``
        tag with value ``val``.

        :param PaperDocAddCommentType val:
        :rtype: EventType
        """
        return cls('paper_doc_add_comment', val)

    @classmethod
    def paper_doc_change_member_role(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_change_member_role`` tag with value ``val``.

        :param PaperDocChangeMemberRoleType val:
        :rtype: EventType
        """
        return cls('paper_doc_change_member_role', val)

    @classmethod
    def paper_doc_change_sharing_policy(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_change_sharing_policy`` tag with value ``val``.

        :param PaperDocChangeSharingPolicyType val:
        :rtype: EventType
        """
        return cls('paper_doc_change_sharing_policy', val)

    @classmethod
    def paper_doc_change_subscription(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_change_subscription`` tag with value ``val``.

        :param PaperDocChangeSubscriptionType val:
        :rtype: EventType
        """
        return cls('paper_doc_change_subscription', val)

    @classmethod
    def paper_doc_deleted(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_deleted`` tag
        with value ``val``.

        :param PaperDocDeletedType val:
        :rtype: EventType
        """
        return cls('paper_doc_deleted', val)

    @classmethod
    def paper_doc_delete_comment(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_delete_comment``
        tag with value ``val``.

        :param PaperDocDeleteCommentType val:
        :rtype: EventType
        """
        return cls('paper_doc_delete_comment', val)

    @classmethod
    def paper_doc_download(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_download`` tag
        with value ``val``.

        :param PaperDocDownloadType val:
        :rtype: EventType
        """
        return cls('paper_doc_download', val)

    @classmethod
    def paper_doc_edit(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_edit`` tag with
        value ``val``.

        :param PaperDocEditType val:
        :rtype: EventType
        """
        return cls('paper_doc_edit', val)

    @classmethod
    def paper_doc_edit_comment(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_edit_comment``
        tag with value ``val``.

        :param PaperDocEditCommentType val:
        :rtype: EventType
        """
        return cls('paper_doc_edit_comment', val)

    @classmethod
    def paper_doc_followed(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_followed`` tag
        with value ``val``.

        :param PaperDocFollowedType val:
        :rtype: EventType
        """
        return cls('paper_doc_followed', val)

    @classmethod
    def paper_doc_mention(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_mention`` tag
        with value ``val``.

        :param PaperDocMentionType val:
        :rtype: EventType
        """
        return cls('paper_doc_mention', val)

    @classmethod
    def paper_doc_ownership_changed(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_ownership_changed`` tag with value ``val``.

        :param PaperDocOwnershipChangedType val:
        :rtype: EventType
        """
        return cls('paper_doc_ownership_changed', val)

    @classmethod
    def paper_doc_request_access(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_request_access``
        tag with value ``val``.

        :param PaperDocRequestAccessType val:
        :rtype: EventType
        """
        return cls('paper_doc_request_access', val)

    @classmethod
    def paper_doc_resolve_comment(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_resolve_comment`` tag with value ``val``.

        :param PaperDocResolveCommentType val:
        :rtype: EventType
        """
        return cls('paper_doc_resolve_comment', val)

    @classmethod
    def paper_doc_revert(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_revert`` tag
        with value ``val``.

        :param PaperDocRevertType val:
        :rtype: EventType
        """
        return cls('paper_doc_revert', val)

    @classmethod
    def paper_doc_slack_share(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_slack_share``
        tag with value ``val``.

        :param PaperDocSlackShareType val:
        :rtype: EventType
        """
        return cls('paper_doc_slack_share', val)

    @classmethod
    def paper_doc_team_invite(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_team_invite``
        tag with value ``val``.

        :param PaperDocTeamInviteType val:
        :rtype: EventType
        """
        return cls('paper_doc_team_invite', val)

    @classmethod
    def paper_doc_trashed(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_trashed`` tag
        with value ``val``.

        :param PaperDocTrashedType val:
        :rtype: EventType
        """
        return cls('paper_doc_trashed', val)

    @classmethod
    def paper_doc_unresolve_comment(cls, val):
        """
        Create an instance of this class set to the
        ``paper_doc_unresolve_comment`` tag with value ``val``.

        :param PaperDocUnresolveCommentType val:
        :rtype: EventType
        """
        return cls('paper_doc_unresolve_comment', val)

    @classmethod
    def paper_doc_untrashed(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_untrashed`` tag
        with value ``val``.

        :param PaperDocUntrashedType val:
        :rtype: EventType
        """
        return cls('paper_doc_untrashed', val)

    @classmethod
    def paper_doc_view(cls, val):
        """
        Create an instance of this class set to the ``paper_doc_view`` tag with
        value ``val``.

        :param PaperDocViewType val:
        :rtype: EventType
        """
        return cls('paper_doc_view', val)

    @classmethod
    def paper_external_view_allow(cls, val):
        """
        Create an instance of this class set to the
        ``paper_external_view_allow`` tag with value ``val``.

        :param PaperExternalViewAllowType val:
        :rtype: EventType
        """
        return cls('paper_external_view_allow', val)

    @classmethod
    def paper_external_view_default_team(cls, val):
        """
        Create an instance of this class set to the
        ``paper_external_view_default_team`` tag with value ``val``.

        :param PaperExternalViewDefaultTeamType val:
        :rtype: EventType
        """
        return cls('paper_external_view_default_team', val)

    @classmethod
    def paper_external_view_forbid(cls, val):
        """
        Create an instance of this class set to the
        ``paper_external_view_forbid`` tag with value ``val``.

        :param PaperExternalViewForbidType val:
        :rtype: EventType
        """
        return cls('paper_external_view_forbid', val)

    @classmethod
    def paper_folder_change_subscription(cls, val):
        """
        Create an instance of this class set to the
        ``paper_folder_change_subscription`` tag with value ``val``.

        :param PaperFolderChangeSubscriptionType val:
        :rtype: EventType
        """
        return cls('paper_folder_change_subscription', val)

    @classmethod
    def paper_folder_deleted(cls, val):
        """
        Create an instance of this class set to the ``paper_folder_deleted`` tag
        with value ``val``.

        :param PaperFolderDeletedType val:
        :rtype: EventType
        """
        return cls('paper_folder_deleted', val)

    @classmethod
    def paper_folder_followed(cls, val):
        """
        Create an instance of this class set to the ``paper_folder_followed``
        tag with value ``val``.

        :param PaperFolderFollowedType val:
        :rtype: EventType
        """
        return cls('paper_folder_followed', val)

    @classmethod
    def paper_folder_team_invite(cls, val):
        """
        Create an instance of this class set to the ``paper_folder_team_invite``
        tag with value ``val``.

        :param PaperFolderTeamInviteType val:
        :rtype: EventType
        """
        return cls('paper_folder_team_invite', val)

    @classmethod
    def paper_published_link_change_permission(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_change_permission`` tag with value ``val``.

        :param PaperPublishedLinkChangePermissionType val:
        :rtype: EventType
        """
        return cls('paper_published_link_change_permission', val)

    @classmethod
    def paper_published_link_create(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_create`` tag with value ``val``.

        :param PaperPublishedLinkCreateType val:
        :rtype: EventType
        """
        return cls('paper_published_link_create', val)

    @classmethod
    def paper_published_link_disabled(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_disabled`` tag with value ``val``.

        :param PaperPublishedLinkDisabledType val:
        :rtype: EventType
        """
        return cls('paper_published_link_disabled', val)

    @classmethod
    def paper_published_link_view(cls, val):
        """
        Create an instance of this class set to the
        ``paper_published_link_view`` tag with value ``val``.

        :param PaperPublishedLinkViewType val:
        :rtype: EventType
        """
        return cls('paper_published_link_view', val)

    @classmethod
    def password_change(cls, val):
        """
        Create an instance of this class set to the ``password_change`` tag with
        value ``val``.

        :param PasswordChangeType val:
        :rtype: EventType
        """
        return cls('password_change', val)

    @classmethod
    def password_reset(cls, val):
        """
        Create an instance of this class set to the ``password_reset`` tag with
        value ``val``.

        :param PasswordResetType val:
        :rtype: EventType
        """
        return cls('password_reset', val)

    @classmethod
    def password_reset_all(cls, val):
        """
        Create an instance of this class set to the ``password_reset_all`` tag
        with value ``val``.

        :param PasswordResetAllType val:
        :rtype: EventType
        """
        return cls('password_reset_all', val)

    @classmethod
    def classification_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``classification_create_report`` tag with value ``val``.

        :param ClassificationCreateReportType val:
        :rtype: EventType
        """
        return cls('classification_create_report', val)

    @classmethod
    def classification_create_report_fail(cls, val):
        """
        Create an instance of this class set to the
        ``classification_create_report_fail`` tag with value ``val``.

        :param ClassificationCreateReportFailType val:
        :rtype: EventType
        """
        return cls('classification_create_report_fail', val)

    @classmethod
    def emm_create_exceptions_report(cls, val):
        """
        Create an instance of this class set to the
        ``emm_create_exceptions_report`` tag with value ``val``.

        :param EmmCreateExceptionsReportType val:
        :rtype: EventType
        """
        return cls('emm_create_exceptions_report', val)

    @classmethod
    def emm_create_usage_report(cls, val):
        """
        Create an instance of this class set to the ``emm_create_usage_report``
        tag with value ``val``.

        :param EmmCreateUsageReportType val:
        :rtype: EventType
        """
        return cls('emm_create_usage_report', val)

    @classmethod
    def export_members_report(cls, val):
        """
        Create an instance of this class set to the ``export_members_report``
        tag with value ``val``.

        :param ExportMembersReportType val:
        :rtype: EventType
        """
        return cls('export_members_report', val)

    @classmethod
    def export_members_report_fail(cls, val):
        """
        Create an instance of this class set to the
        ``export_members_report_fail`` tag with value ``val``.

        :param ExportMembersReportFailType val:
        :rtype: EventType
        """
        return cls('export_members_report_fail', val)

    @classmethod
    def external_sharing_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``external_sharing_create_report`` tag with value ``val``.

        :param ExternalSharingCreateReportType val:
        :rtype: EventType
        """
        return cls('external_sharing_create_report', val)

    @classmethod
    def external_sharing_report_failed(cls, val):
        """
        Create an instance of this class set to the
        ``external_sharing_report_failed`` tag with value ``val``.

        :param ExternalSharingReportFailedType val:
        :rtype: EventType
        """
        return cls('external_sharing_report_failed', val)

    @classmethod
    def no_expiration_link_gen_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``no_expiration_link_gen_create_report`` tag with value ``val``.

        :param NoExpirationLinkGenCreateReportType val:
        :rtype: EventType
        """
        return cls('no_expiration_link_gen_create_report', val)

    @classmethod
    def no_expiration_link_gen_report_failed(cls, val):
        """
        Create an instance of this class set to the
        ``no_expiration_link_gen_report_failed`` tag with value ``val``.

        :param NoExpirationLinkGenReportFailedType val:
        :rtype: EventType
        """
        return cls('no_expiration_link_gen_report_failed', val)

    @classmethod
    def no_password_link_gen_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_gen_create_report`` tag with value ``val``.

        :param NoPasswordLinkGenCreateReportType val:
        :rtype: EventType
        """
        return cls('no_password_link_gen_create_report', val)

    @classmethod
    def no_password_link_gen_report_failed(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_gen_report_failed`` tag with value ``val``.

        :param NoPasswordLinkGenReportFailedType val:
        :rtype: EventType
        """
        return cls('no_password_link_gen_report_failed', val)

    @classmethod
    def no_password_link_view_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_view_create_report`` tag with value ``val``.

        :param NoPasswordLinkViewCreateReportType val:
        :rtype: EventType
        """
        return cls('no_password_link_view_create_report', val)

    @classmethod
    def no_password_link_view_report_failed(cls, val):
        """
        Create an instance of this class set to the
        ``no_password_link_view_report_failed`` tag with value ``val``.

        :param NoPasswordLinkViewReportFailedType val:
        :rtype: EventType
        """
        return cls('no_password_link_view_report_failed', val)

    @classmethod
    def outdated_link_view_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``outdated_link_view_create_report`` tag with value ``val``.

        :param OutdatedLinkViewCreateReportType val:
        :rtype: EventType
        """
        return cls('outdated_link_view_create_report', val)

    @classmethod
    def outdated_link_view_report_failed(cls, val):
        """
        Create an instance of this class set to the
        ``outdated_link_view_report_failed`` tag with value ``val``.

        :param OutdatedLinkViewReportFailedType val:
        :rtype: EventType
        """
        return cls('outdated_link_view_report_failed', val)

    @classmethod
    def paper_admin_export_start(cls, val):
        """
        Create an instance of this class set to the ``paper_admin_export_start``
        tag with value ``val``.

        :param PaperAdminExportStartType val:
        :rtype: EventType
        """
        return cls('paper_admin_export_start', val)

    @classmethod
    def smart_sync_create_admin_privilege_report(cls, val):
        """
        Create an instance of this class set to the
        ``smart_sync_create_admin_privilege_report`` tag with value ``val``.

        :param SmartSyncCreateAdminPrivilegeReportType val:
        :rtype: EventType
        """
        return cls('smart_sync_create_admin_privilege_report', val)

    @classmethod
    def team_activity_create_report(cls, val):
        """
        Create an instance of this class set to the
        ``team_activity_create_report`` tag with value ``val``.

        :param TeamActivityCreateReportType val:
        :rtype: EventType
        """
        return cls('team_activity_create_report', val)

    @classmethod
    def team_activity_create_report_fail(cls, val):
        """
        Create an instance of this class set to the
        ``team_activity_create_report_fail`` tag with value ``val``.

        :param TeamActivityCreateReportFailType val:
        :rtype: EventType
        """
        return cls('team_activity_create_report_fail', val)

    @classmethod
    def collection_share(cls, val):
        """
        Create an instance of this class set to the ``collection_share`` tag
        with value ``val``.

        :param CollectionShareType val:
        :rtype: EventType
        """
        return cls('collection_share', val)

    @classmethod
    def file_transfers_file_add(cls, val):
        """
        Create an instance of this class set to the ``file_transfers_file_add``
        tag with value ``val``.

        :param FileTransfersFileAddType val:
        :rtype: EventType
        """
        return cls('file_transfers_file_add', val)

    @classmethod
    def file_transfers_transfer_delete(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_delete`` tag with value ``val``.

        :param FileTransfersTransferDeleteType val:
        :rtype: EventType
        """
        return cls('file_transfers_transfer_delete', val)

    @classmethod
    def file_transfers_transfer_download(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_download`` tag with value ``val``.

        :param FileTransfersTransferDownloadType val:
        :rtype: EventType
        """
        return cls('file_transfers_transfer_download', val)

    @classmethod
    def file_transfers_transfer_send(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_send`` tag with value ``val``.

        :param FileTransfersTransferSendType val:
        :rtype: EventType
        """
        return cls('file_transfers_transfer_send', val)

    @classmethod
    def file_transfers_transfer_view(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_transfer_view`` tag with value ``val``.

        :param FileTransfersTransferViewType val:
        :rtype: EventType
        """
        return cls('file_transfers_transfer_view', val)

    @classmethod
    def note_acl_invite_only(cls, val):
        """
        Create an instance of this class set to the ``note_acl_invite_only`` tag
        with value ``val``.

        :param NoteAclInviteOnlyType val:
        :rtype: EventType
        """
        return cls('note_acl_invite_only', val)

    @classmethod
    def note_acl_link(cls, val):
        """
        Create an instance of this class set to the ``note_acl_link`` tag with
        value ``val``.

        :param NoteAclLinkType val:
        :rtype: EventType
        """
        return cls('note_acl_link', val)

    @classmethod
    def note_acl_team_link(cls, val):
        """
        Create an instance of this class set to the ``note_acl_team_link`` tag
        with value ``val``.

        :param NoteAclTeamLinkType val:
        :rtype: EventType
        """
        return cls('note_acl_team_link', val)

    @classmethod
    def note_shared(cls, val):
        """
        Create an instance of this class set to the ``note_shared`` tag with
        value ``val``.

        :param NoteSharedType val:
        :rtype: EventType
        """
        return cls('note_shared', val)

    @classmethod
    def note_share_receive(cls, val):
        """
        Create an instance of this class set to the ``note_share_receive`` tag
        with value ``val``.

        :param NoteShareReceiveType val:
        :rtype: EventType
        """
        return cls('note_share_receive', val)

    @classmethod
    def open_note_shared(cls, val):
        """
        Create an instance of this class set to the ``open_note_shared`` tag
        with value ``val``.

        :param OpenNoteSharedType val:
        :rtype: EventType
        """
        return cls('open_note_shared', val)

    @classmethod
    def sf_add_group(cls, val):
        """
        Create an instance of this class set to the ``sf_add_group`` tag with
        value ``val``.

        :param SfAddGroupType val:
        :rtype: EventType
        """
        return cls('sf_add_group', val)

    @classmethod
    def sf_allow_non_members_to_view_shared_links(cls, val):
        """
        Create an instance of this class set to the
        ``sf_allow_non_members_to_view_shared_links`` tag with value ``val``.

        :param SfAllowNonMembersToViewSharedLinksType val:
        :rtype: EventType
        """
        return cls('sf_allow_non_members_to_view_shared_links', val)

    @classmethod
    def sf_external_invite_warn(cls, val):
        """
        Create an instance of this class set to the ``sf_external_invite_warn``
        tag with value ``val``.

        :param SfExternalInviteWarnType val:
        :rtype: EventType
        """
        return cls('sf_external_invite_warn', val)

    @classmethod
    def sf_fb_invite(cls, val):
        """
        Create an instance of this class set to the ``sf_fb_invite`` tag with
        value ``val``.

        :param SfFbInviteType val:
        :rtype: EventType
        """
        return cls('sf_fb_invite', val)

    @classmethod
    def sf_fb_invite_change_role(cls, val):
        """
        Create an instance of this class set to the ``sf_fb_invite_change_role``
        tag with value ``val``.

        :param SfFbInviteChangeRoleType val:
        :rtype: EventType
        """
        return cls('sf_fb_invite_change_role', val)

    @classmethod
    def sf_fb_uninvite(cls, val):
        """
        Create an instance of this class set to the ``sf_fb_uninvite`` tag with
        value ``val``.

        :param SfFbUninviteType val:
        :rtype: EventType
        """
        return cls('sf_fb_uninvite', val)

    @classmethod
    def sf_invite_group(cls, val):
        """
        Create an instance of this class set to the ``sf_invite_group`` tag with
        value ``val``.

        :param SfInviteGroupType val:
        :rtype: EventType
        """
        return cls('sf_invite_group', val)

    @classmethod
    def sf_team_grant_access(cls, val):
        """
        Create an instance of this class set to the ``sf_team_grant_access`` tag
        with value ``val``.

        :param SfTeamGrantAccessType val:
        :rtype: EventType
        """
        return cls('sf_team_grant_access', val)

    @classmethod
    def sf_team_invite(cls, val):
        """
        Create an instance of this class set to the ``sf_team_invite`` tag with
        value ``val``.

        :param SfTeamInviteType val:
        :rtype: EventType
        """
        return cls('sf_team_invite', val)

    @classmethod
    def sf_team_invite_change_role(cls, val):
        """
        Create an instance of this class set to the
        ``sf_team_invite_change_role`` tag with value ``val``.

        :param SfTeamInviteChangeRoleType val:
        :rtype: EventType
        """
        return cls('sf_team_invite_change_role', val)

    @classmethod
    def sf_team_join(cls, val):
        """
        Create an instance of this class set to the ``sf_team_join`` tag with
        value ``val``.

        :param SfTeamJoinType val:
        :rtype: EventType
        """
        return cls('sf_team_join', val)

    @classmethod
    def sf_team_join_from_oob_link(cls, val):
        """
        Create an instance of this class set to the
        ``sf_team_join_from_oob_link`` tag with value ``val``.

        :param SfTeamJoinFromOobLinkType val:
        :rtype: EventType
        """
        return cls('sf_team_join_from_oob_link', val)

    @classmethod
    def sf_team_uninvite(cls, val):
        """
        Create an instance of this class set to the ``sf_team_uninvite`` tag
        with value ``val``.

        :param SfTeamUninviteType val:
        :rtype: EventType
        """
        return cls('sf_team_uninvite', val)

    @classmethod
    def shared_content_add_invitees(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_invitees`` tag with value ``val``.

        :param SharedContentAddInviteesType val:
        :rtype: EventType
        """
        return cls('shared_content_add_invitees', val)

    @classmethod
    def shared_content_add_link_expiry(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_link_expiry`` tag with value ``val``.

        :param SharedContentAddLinkExpiryType val:
        :rtype: EventType
        """
        return cls('shared_content_add_link_expiry', val)

    @classmethod
    def shared_content_add_link_password(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_link_password`` tag with value ``val``.

        :param SharedContentAddLinkPasswordType val:
        :rtype: EventType
        """
        return cls('shared_content_add_link_password', val)

    @classmethod
    def shared_content_add_member(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_add_member`` tag with value ``val``.

        :param SharedContentAddMemberType val:
        :rtype: EventType
        """
        return cls('shared_content_add_member', val)

    @classmethod
    def shared_content_change_downloads_policy(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_downloads_policy`` tag with value ``val``.

        :param SharedContentChangeDownloadsPolicyType val:
        :rtype: EventType
        """
        return cls('shared_content_change_downloads_policy', val)

    @classmethod
    def shared_content_change_invitee_role(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_invitee_role`` tag with value ``val``.

        :param SharedContentChangeInviteeRoleType val:
        :rtype: EventType
        """
        return cls('shared_content_change_invitee_role', val)

    @classmethod
    def shared_content_change_link_audience(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_link_audience`` tag with value ``val``.

        :param SharedContentChangeLinkAudienceType val:
        :rtype: EventType
        """
        return cls('shared_content_change_link_audience', val)

    @classmethod
    def shared_content_change_link_expiry(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_link_expiry`` tag with value ``val``.

        :param SharedContentChangeLinkExpiryType val:
        :rtype: EventType
        """
        return cls('shared_content_change_link_expiry', val)

    @classmethod
    def shared_content_change_link_password(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_link_password`` tag with value ``val``.

        :param SharedContentChangeLinkPasswordType val:
        :rtype: EventType
        """
        return cls('shared_content_change_link_password', val)

    @classmethod
    def shared_content_change_member_role(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_member_role`` tag with value ``val``.

        :param SharedContentChangeMemberRoleType val:
        :rtype: EventType
        """
        return cls('shared_content_change_member_role', val)

    @classmethod
    def shared_content_change_viewer_info_policy(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_change_viewer_info_policy`` tag with value ``val``.

        :param SharedContentChangeViewerInfoPolicyType val:
        :rtype: EventType
        """
        return cls('shared_content_change_viewer_info_policy', val)

    @classmethod
    def shared_content_claim_invitation(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_claim_invitation`` tag with value ``val``.

        :param SharedContentClaimInvitationType val:
        :rtype: EventType
        """
        return cls('shared_content_claim_invitation', val)

    @classmethod
    def shared_content_copy(cls, val):
        """
        Create an instance of this class set to the ``shared_content_copy`` tag
        with value ``val``.

        :param SharedContentCopyType val:
        :rtype: EventType
        """
        return cls('shared_content_copy', val)

    @classmethod
    def shared_content_download(cls, val):
        """
        Create an instance of this class set to the ``shared_content_download``
        tag with value ``val``.

        :param SharedContentDownloadType val:
        :rtype: EventType
        """
        return cls('shared_content_download', val)

    @classmethod
    def shared_content_relinquish_membership(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_relinquish_membership`` tag with value ``val``.

        :param SharedContentRelinquishMembershipType val:
        :rtype: EventType
        """
        return cls('shared_content_relinquish_membership', val)

    @classmethod
    def shared_content_remove_invitees(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_invitees`` tag with value ``val``.

        :param SharedContentRemoveInviteesType val:
        :rtype: EventType
        """
        return cls('shared_content_remove_invitees', val)

    @classmethod
    def shared_content_remove_link_expiry(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_link_expiry`` tag with value ``val``.

        :param SharedContentRemoveLinkExpiryType val:
        :rtype: EventType
        """
        return cls('shared_content_remove_link_expiry', val)

    @classmethod
    def shared_content_remove_link_password(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_link_password`` tag with value ``val``.

        :param SharedContentRemoveLinkPasswordType val:
        :rtype: EventType
        """
        return cls('shared_content_remove_link_password', val)

    @classmethod
    def shared_content_remove_member(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_remove_member`` tag with value ``val``.

        :param SharedContentRemoveMemberType val:
        :rtype: EventType
        """
        return cls('shared_content_remove_member', val)

    @classmethod
    def shared_content_request_access(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_request_access`` tag with value ``val``.

        :param SharedContentRequestAccessType val:
        :rtype: EventType
        """
        return cls('shared_content_request_access', val)

    @classmethod
    def shared_content_restore_invitees(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_restore_invitees`` tag with value ``val``.

        :param SharedContentRestoreInviteesType val:
        :rtype: EventType
        """
        return cls('shared_content_restore_invitees', val)

    @classmethod
    def shared_content_restore_member(cls, val):
        """
        Create an instance of this class set to the
        ``shared_content_restore_member`` tag with value ``val``.

        :param SharedContentRestoreMemberType val:
        :rtype: EventType
        """
        return cls('shared_content_restore_member', val)

    @classmethod
    def shared_content_unshare(cls, val):
        """
        Create an instance of this class set to the ``shared_content_unshare``
        tag with value ``val``.

        :param SharedContentUnshareType val:
        :rtype: EventType
        """
        return cls('shared_content_unshare', val)

    @classmethod
    def shared_content_view(cls, val):
        """
        Create an instance of this class set to the ``shared_content_view`` tag
        with value ``val``.

        :param SharedContentViewType val:
        :rtype: EventType
        """
        return cls('shared_content_view', val)

    @classmethod
    def shared_folder_change_link_policy(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_link_policy`` tag with value ``val``.

        :param SharedFolderChangeLinkPolicyType val:
        :rtype: EventType
        """
        return cls('shared_folder_change_link_policy', val)

    @classmethod
    def shared_folder_change_members_inheritance_policy(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_members_inheritance_policy`` tag with value
        ``val``.

        :param SharedFolderChangeMembersInheritancePolicyType val:
        :rtype: EventType
        """
        return cls('shared_folder_change_members_inheritance_policy', val)

    @classmethod
    def shared_folder_change_members_management_policy(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_members_management_policy`` tag with value
        ``val``.

        :param SharedFolderChangeMembersManagementPolicyType val:
        :rtype: EventType
        """
        return cls('shared_folder_change_members_management_policy', val)

    @classmethod
    def shared_folder_change_members_policy(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_change_members_policy`` tag with value ``val``.

        :param SharedFolderChangeMembersPolicyType val:
        :rtype: EventType
        """
        return cls('shared_folder_change_members_policy', val)

    @classmethod
    def shared_folder_create(cls, val):
        """
        Create an instance of this class set to the ``shared_folder_create`` tag
        with value ``val``.

        :param SharedFolderCreateType val:
        :rtype: EventType
        """
        return cls('shared_folder_create', val)

    @classmethod
    def shared_folder_decline_invitation(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_decline_invitation`` tag with value ``val``.

        :param SharedFolderDeclineInvitationType val:
        :rtype: EventType
        """
        return cls('shared_folder_decline_invitation', val)

    @classmethod
    def shared_folder_mount(cls, val):
        """
        Create an instance of this class set to the ``shared_folder_mount`` tag
        with value ``val``.

        :param SharedFolderMountType val:
        :rtype: EventType
        """
        return cls('shared_folder_mount', val)

    @classmethod
    def shared_folder_nest(cls, val):
        """
        Create an instance of this class set to the ``shared_folder_nest`` tag
        with value ``val``.

        :param SharedFolderNestType val:
        :rtype: EventType
        """
        return cls('shared_folder_nest', val)

    @classmethod
    def shared_folder_transfer_ownership(cls, val):
        """
        Create an instance of this class set to the
        ``shared_folder_transfer_ownership`` tag with value ``val``.

        :param SharedFolderTransferOwnershipType val:
        :rtype: EventType
        """
        return cls('shared_folder_transfer_ownership', val)

    @classmethod
    def shared_folder_unmount(cls, val):
        """
        Create an instance of this class set to the ``shared_folder_unmount``
        tag with value ``val``.

        :param SharedFolderUnmountType val:
        :rtype: EventType
        """
        return cls('shared_folder_unmount', val)

    @classmethod
    def shared_link_add_expiry(cls, val):
        """
        Create an instance of this class set to the ``shared_link_add_expiry``
        tag with value ``val``.

        :param SharedLinkAddExpiryType val:
        :rtype: EventType
        """
        return cls('shared_link_add_expiry', val)

    @classmethod
    def shared_link_change_expiry(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_change_expiry`` tag with value ``val``.

        :param SharedLinkChangeExpiryType val:
        :rtype: EventType
        """
        return cls('shared_link_change_expiry', val)

    @classmethod
    def shared_link_change_visibility(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_change_visibility`` tag with value ``val``.

        :param SharedLinkChangeVisibilityType val:
        :rtype: EventType
        """
        return cls('shared_link_change_visibility', val)

    @classmethod
    def shared_link_copy(cls, val):
        """
        Create an instance of this class set to the ``shared_link_copy`` tag
        with value ``val``.

        :param SharedLinkCopyType val:
        :rtype: EventType
        """
        return cls('shared_link_copy', val)

    @classmethod
    def shared_link_create(cls, val):
        """
        Create an instance of this class set to the ``shared_link_create`` tag
        with value ``val``.

        :param SharedLinkCreateType val:
        :rtype: EventType
        """
        return cls('shared_link_create', val)

    @classmethod
    def shared_link_disable(cls, val):
        """
        Create an instance of this class set to the ``shared_link_disable`` tag
        with value ``val``.

        :param SharedLinkDisableType val:
        :rtype: EventType
        """
        return cls('shared_link_disable', val)

    @classmethod
    def shared_link_download(cls, val):
        """
        Create an instance of this class set to the ``shared_link_download`` tag
        with value ``val``.

        :param SharedLinkDownloadType val:
        :rtype: EventType
        """
        return cls('shared_link_download', val)

    @classmethod
    def shared_link_remove_expiry(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_remove_expiry`` tag with value ``val``.

        :param SharedLinkRemoveExpiryType val:
        :rtype: EventType
        """
        return cls('shared_link_remove_expiry', val)

    @classmethod
    def shared_link_settings_add_expiration(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_add_expiration`` tag with value ``val``.

        :param SharedLinkSettingsAddExpirationType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_add_expiration', val)

    @classmethod
    def shared_link_settings_add_password(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_add_password`` tag with value ``val``.

        :param SharedLinkSettingsAddPasswordType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_add_password', val)

    @classmethod
    def shared_link_settings_allow_download_disabled(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_allow_download_disabled`` tag with value ``val``.

        :param SharedLinkSettingsAllowDownloadDisabledType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_allow_download_disabled', val)

    @classmethod
    def shared_link_settings_allow_download_enabled(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_allow_download_enabled`` tag with value ``val``.

        :param SharedLinkSettingsAllowDownloadEnabledType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_allow_download_enabled', val)

    @classmethod
    def shared_link_settings_change_audience(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_change_audience`` tag with value ``val``.

        :param SharedLinkSettingsChangeAudienceType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_change_audience', val)

    @classmethod
    def shared_link_settings_change_expiration(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_change_expiration`` tag with value ``val``.

        :param SharedLinkSettingsChangeExpirationType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_change_expiration', val)

    @classmethod
    def shared_link_settings_change_password(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_change_password`` tag with value ``val``.

        :param SharedLinkSettingsChangePasswordType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_change_password', val)

    @classmethod
    def shared_link_settings_remove_expiration(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_remove_expiration`` tag with value ``val``.

        :param SharedLinkSettingsRemoveExpirationType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_remove_expiration', val)

    @classmethod
    def shared_link_settings_remove_password(cls, val):
        """
        Create an instance of this class set to the
        ``shared_link_settings_remove_password`` tag with value ``val``.

        :param SharedLinkSettingsRemovePasswordType val:
        :rtype: EventType
        """
        return cls('shared_link_settings_remove_password', val)

    @classmethod
    def shared_link_share(cls, val):
        """
        Create an instance of this class set to the ``shared_link_share`` tag
        with value ``val``.

        :param SharedLinkShareType val:
        :rtype: EventType
        """
        return cls('shared_link_share', val)

    @classmethod
    def shared_link_view(cls, val):
        """
        Create an instance of this class set to the ``shared_link_view`` tag
        with value ``val``.

        :param SharedLinkViewType val:
        :rtype: EventType
        """
        return cls('shared_link_view', val)

    @classmethod
    def shared_note_opened(cls, val):
        """
        Create an instance of this class set to the ``shared_note_opened`` tag
        with value ``val``.

        :param SharedNoteOpenedType val:
        :rtype: EventType
        """
        return cls('shared_note_opened', val)

    @classmethod
    def shmodel_disable_downloads(cls, val):
        """
        Create an instance of this class set to the
        ``shmodel_disable_downloads`` tag with value ``val``.

        :param ShmodelDisableDownloadsType val:
        :rtype: EventType
        """
        return cls('shmodel_disable_downloads', val)

    @classmethod
    def shmodel_enable_downloads(cls, val):
        """
        Create an instance of this class set to the ``shmodel_enable_downloads``
        tag with value ``val``.

        :param ShmodelEnableDownloadsType val:
        :rtype: EventType
        """
        return cls('shmodel_enable_downloads', val)

    @classmethod
    def shmodel_group_share(cls, val):
        """
        Create an instance of this class set to the ``shmodel_group_share`` tag
        with value ``val``.

        :param ShmodelGroupShareType val:
        :rtype: EventType
        """
        return cls('shmodel_group_share', val)

    @classmethod
    def showcase_access_granted(cls, val):
        """
        Create an instance of this class set to the ``showcase_access_granted``
        tag with value ``val``.

        :param ShowcaseAccessGrantedType val:
        :rtype: EventType
        """
        return cls('showcase_access_granted', val)

    @classmethod
    def showcase_add_member(cls, val):
        """
        Create an instance of this class set to the ``showcase_add_member`` tag
        with value ``val``.

        :param ShowcaseAddMemberType val:
        :rtype: EventType
        """
        return cls('showcase_add_member', val)

    @classmethod
    def showcase_archived(cls, val):
        """
        Create an instance of this class set to the ``showcase_archived`` tag
        with value ``val``.

        :param ShowcaseArchivedType val:
        :rtype: EventType
        """
        return cls('showcase_archived', val)

    @classmethod
    def showcase_created(cls, val):
        """
        Create an instance of this class set to the ``showcase_created`` tag
        with value ``val``.

        :param ShowcaseCreatedType val:
        :rtype: EventType
        """
        return cls('showcase_created', val)

    @classmethod
    def showcase_delete_comment(cls, val):
        """
        Create an instance of this class set to the ``showcase_delete_comment``
        tag with value ``val``.

        :param ShowcaseDeleteCommentType val:
        :rtype: EventType
        """
        return cls('showcase_delete_comment', val)

    @classmethod
    def showcase_edited(cls, val):
        """
        Create an instance of this class set to the ``showcase_edited`` tag with
        value ``val``.

        :param ShowcaseEditedType val:
        :rtype: EventType
        """
        return cls('showcase_edited', val)

    @classmethod
    def showcase_edit_comment(cls, val):
        """
        Create an instance of this class set to the ``showcase_edit_comment``
        tag with value ``val``.

        :param ShowcaseEditCommentType val:
        :rtype: EventType
        """
        return cls('showcase_edit_comment', val)

    @classmethod
    def showcase_file_added(cls, val):
        """
        Create an instance of this class set to the ``showcase_file_added`` tag
        with value ``val``.

        :param ShowcaseFileAddedType val:
        :rtype: EventType
        """
        return cls('showcase_file_added', val)

    @classmethod
    def showcase_file_download(cls, val):
        """
        Create an instance of this class set to the ``showcase_file_download``
        tag with value ``val``.

        :param ShowcaseFileDownloadType val:
        :rtype: EventType
        """
        return cls('showcase_file_download', val)

    @classmethod
    def showcase_file_removed(cls, val):
        """
        Create an instance of this class set to the ``showcase_file_removed``
        tag with value ``val``.

        :param ShowcaseFileRemovedType val:
        :rtype: EventType
        """
        return cls('showcase_file_removed', val)

    @classmethod
    def showcase_file_view(cls, val):
        """
        Create an instance of this class set to the ``showcase_file_view`` tag
        with value ``val``.

        :param ShowcaseFileViewType val:
        :rtype: EventType
        """
        return cls('showcase_file_view', val)

    @classmethod
    def showcase_permanently_deleted(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_permanently_deleted`` tag with value ``val``.

        :param ShowcasePermanentlyDeletedType val:
        :rtype: EventType
        """
        return cls('showcase_permanently_deleted', val)

    @classmethod
    def showcase_post_comment(cls, val):
        """
        Create an instance of this class set to the ``showcase_post_comment``
        tag with value ``val``.

        :param ShowcasePostCommentType val:
        :rtype: EventType
        """
        return cls('showcase_post_comment', val)

    @classmethod
    def showcase_remove_member(cls, val):
        """
        Create an instance of this class set to the ``showcase_remove_member``
        tag with value ``val``.

        :param ShowcaseRemoveMemberType val:
        :rtype: EventType
        """
        return cls('showcase_remove_member', val)

    @classmethod
    def showcase_renamed(cls, val):
        """
        Create an instance of this class set to the ``showcase_renamed`` tag
        with value ``val``.

        :param ShowcaseRenamedType val:
        :rtype: EventType
        """
        return cls('showcase_renamed', val)

    @classmethod
    def showcase_request_access(cls, val):
        """
        Create an instance of this class set to the ``showcase_request_access``
        tag with value ``val``.

        :param ShowcaseRequestAccessType val:
        :rtype: EventType
        """
        return cls('showcase_request_access', val)

    @classmethod
    def showcase_resolve_comment(cls, val):
        """
        Create an instance of this class set to the ``showcase_resolve_comment``
        tag with value ``val``.

        :param ShowcaseResolveCommentType val:
        :rtype: EventType
        """
        return cls('showcase_resolve_comment', val)

    @classmethod
    def showcase_restored(cls, val):
        """
        Create an instance of this class set to the ``showcase_restored`` tag
        with value ``val``.

        :param ShowcaseRestoredType val:
        :rtype: EventType
        """
        return cls('showcase_restored', val)

    @classmethod
    def showcase_trashed(cls, val):
        """
        Create an instance of this class set to the ``showcase_trashed`` tag
        with value ``val``.

        :param ShowcaseTrashedType val:
        :rtype: EventType
        """
        return cls('showcase_trashed', val)

    @classmethod
    def showcase_trashed_deprecated(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_trashed_deprecated`` tag with value ``val``.

        :param ShowcaseTrashedDeprecatedType val:
        :rtype: EventType
        """
        return cls('showcase_trashed_deprecated', val)

    @classmethod
    def showcase_unresolve_comment(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_unresolve_comment`` tag with value ``val``.

        :param ShowcaseUnresolveCommentType val:
        :rtype: EventType
        """
        return cls('showcase_unresolve_comment', val)

    @classmethod
    def showcase_untrashed(cls, val):
        """
        Create an instance of this class set to the ``showcase_untrashed`` tag
        with value ``val``.

        :param ShowcaseUntrashedType val:
        :rtype: EventType
        """
        return cls('showcase_untrashed', val)

    @classmethod
    def showcase_untrashed_deprecated(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_untrashed_deprecated`` tag with value ``val``.

        :param ShowcaseUntrashedDeprecatedType val:
        :rtype: EventType
        """
        return cls('showcase_untrashed_deprecated', val)

    @classmethod
    def showcase_view(cls, val):
        """
        Create an instance of this class set to the ``showcase_view`` tag with
        value ``val``.

        :param ShowcaseViewType val:
        :rtype: EventType
        """
        return cls('showcase_view', val)

    @classmethod
    def sso_add_cert(cls, val):
        """
        Create an instance of this class set to the ``sso_add_cert`` tag with
        value ``val``.

        :param SsoAddCertType val:
        :rtype: EventType
        """
        return cls('sso_add_cert', val)

    @classmethod
    def sso_add_login_url(cls, val):
        """
        Create an instance of this class set to the ``sso_add_login_url`` tag
        with value ``val``.

        :param SsoAddLoginUrlType val:
        :rtype: EventType
        """
        return cls('sso_add_login_url', val)

    @classmethod
    def sso_add_logout_url(cls, val):
        """
        Create an instance of this class set to the ``sso_add_logout_url`` tag
        with value ``val``.

        :param SsoAddLogoutUrlType val:
        :rtype: EventType
        """
        return cls('sso_add_logout_url', val)

    @classmethod
    def sso_change_cert(cls, val):
        """
        Create an instance of this class set to the ``sso_change_cert`` tag with
        value ``val``.

        :param SsoChangeCertType val:
        :rtype: EventType
        """
        return cls('sso_change_cert', val)

    @classmethod
    def sso_change_login_url(cls, val):
        """
        Create an instance of this class set to the ``sso_change_login_url`` tag
        with value ``val``.

        :param SsoChangeLoginUrlType val:
        :rtype: EventType
        """
        return cls('sso_change_login_url', val)

    @classmethod
    def sso_change_logout_url(cls, val):
        """
        Create an instance of this class set to the ``sso_change_logout_url``
        tag with value ``val``.

        :param SsoChangeLogoutUrlType val:
        :rtype: EventType
        """
        return cls('sso_change_logout_url', val)

    @classmethod
    def sso_change_saml_identity_mode(cls, val):
        """
        Create an instance of this class set to the
        ``sso_change_saml_identity_mode`` tag with value ``val``.

        :param SsoChangeSamlIdentityModeType val:
        :rtype: EventType
        """
        return cls('sso_change_saml_identity_mode', val)

    @classmethod
    def sso_remove_cert(cls, val):
        """
        Create an instance of this class set to the ``sso_remove_cert`` tag with
        value ``val``.

        :param SsoRemoveCertType val:
        :rtype: EventType
        """
        return cls('sso_remove_cert', val)

    @classmethod
    def sso_remove_login_url(cls, val):
        """
        Create an instance of this class set to the ``sso_remove_login_url`` tag
        with value ``val``.

        :param SsoRemoveLoginUrlType val:
        :rtype: EventType
        """
        return cls('sso_remove_login_url', val)

    @classmethod
    def sso_remove_logout_url(cls, val):
        """
        Create an instance of this class set to the ``sso_remove_logout_url``
        tag with value ``val``.

        :param SsoRemoveLogoutUrlType val:
        :rtype: EventType
        """
        return cls('sso_remove_logout_url', val)

    @classmethod
    def team_folder_change_status(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_change_status`` tag with value ``val``.

        :param TeamFolderChangeStatusType val:
        :rtype: EventType
        """
        return cls('team_folder_change_status', val)

    @classmethod
    def team_folder_create(cls, val):
        """
        Create an instance of this class set to the ``team_folder_create`` tag
        with value ``val``.

        :param TeamFolderCreateType val:
        :rtype: EventType
        """
        return cls('team_folder_create', val)

    @classmethod
    def team_folder_downgrade(cls, val):
        """
        Create an instance of this class set to the ``team_folder_downgrade``
        tag with value ``val``.

        :param TeamFolderDowngradeType val:
        :rtype: EventType
        """
        return cls('team_folder_downgrade', val)

    @classmethod
    def team_folder_permanently_delete(cls, val):
        """
        Create an instance of this class set to the
        ``team_folder_permanently_delete`` tag with value ``val``.

        :param TeamFolderPermanentlyDeleteType val:
        :rtype: EventType
        """
        return cls('team_folder_permanently_delete', val)

    @classmethod
    def team_folder_rename(cls, val):
        """
        Create an instance of this class set to the ``team_folder_rename`` tag
        with value ``val``.

        :param TeamFolderRenameType val:
        :rtype: EventType
        """
        return cls('team_folder_rename', val)

    @classmethod
    def team_selective_sync_settings_changed(cls, val):
        """
        Create an instance of this class set to the
        ``team_selective_sync_settings_changed`` tag with value ``val``.

        :param TeamSelectiveSyncSettingsChangedType val:
        :rtype: EventType
        """
        return cls('team_selective_sync_settings_changed', val)

    @classmethod
    def account_capture_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``account_capture_change_policy`` tag with value ``val``.

        :param AccountCaptureChangePolicyType val:
        :rtype: EventType
        """
        return cls('account_capture_change_policy', val)

    @classmethod
    def admin_email_reminders_changed(cls, val):
        """
        Create an instance of this class set to the
        ``admin_email_reminders_changed`` tag with value ``val``.

        :param AdminEmailRemindersChangedType val:
        :rtype: EventType
        """
        return cls('admin_email_reminders_changed', val)

    @classmethod
    def allow_download_disabled(cls, val):
        """
        Create an instance of this class set to the ``allow_download_disabled``
        tag with value ``val``.

        :param AllowDownloadDisabledType val:
        :rtype: EventType
        """
        return cls('allow_download_disabled', val)

    @classmethod
    def allow_download_enabled(cls, val):
        """
        Create an instance of this class set to the ``allow_download_enabled``
        tag with value ``val``.

        :param AllowDownloadEnabledType val:
        :rtype: EventType
        """
        return cls('allow_download_enabled', val)

    @classmethod
    def app_permissions_changed(cls, val):
        """
        Create an instance of this class set to the ``app_permissions_changed``
        tag with value ``val``.

        :param AppPermissionsChangedType val:
        :rtype: EventType
        """
        return cls('app_permissions_changed', val)

    @classmethod
    def camera_uploads_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``camera_uploads_policy_changed`` tag with value ``val``.

        :param CameraUploadsPolicyChangedType val:
        :rtype: EventType
        """
        return cls('camera_uploads_policy_changed', val)

    @classmethod
    def capture_transcript_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``capture_transcript_policy_changed`` tag with value ``val``.

        :param CaptureTranscriptPolicyChangedType val:
        :rtype: EventType
        """
        return cls('capture_transcript_policy_changed', val)

    @classmethod
    def classification_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``classification_change_policy`` tag with value ``val``.

        :param ClassificationChangePolicyType val:
        :rtype: EventType
        """
        return cls('classification_change_policy', val)

    @classmethod
    def computer_backup_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``computer_backup_policy_changed`` tag with value ``val``.

        :param ComputerBackupPolicyChangedType val:
        :rtype: EventType
        """
        return cls('computer_backup_policy_changed', val)

    @classmethod
    def content_administration_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``content_administration_policy_changed`` tag with value ``val``.

        :param ContentAdministrationPolicyChangedType val:
        :rtype: EventType
        """
        return cls('content_administration_policy_changed', val)

    @classmethod
    def data_placement_restriction_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``data_placement_restriction_change_policy`` tag with value ``val``.

        :param DataPlacementRestrictionChangePolicyType val:
        :rtype: EventType
        """
        return cls('data_placement_restriction_change_policy', val)

    @classmethod
    def data_placement_restriction_satisfy_policy(cls, val):
        """
        Create an instance of this class set to the
        ``data_placement_restriction_satisfy_policy`` tag with value ``val``.

        :param DataPlacementRestrictionSatisfyPolicyType val:
        :rtype: EventType
        """
        return cls('data_placement_restriction_satisfy_policy', val)

    @classmethod
    def device_approvals_add_exception(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_add_exception`` tag with value ``val``.

        :param DeviceApprovalsAddExceptionType val:
        :rtype: EventType
        """
        return cls('device_approvals_add_exception', val)

    @classmethod
    def device_approvals_change_desktop_policy(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_desktop_policy`` tag with value ``val``.

        :param DeviceApprovalsChangeDesktopPolicyType val:
        :rtype: EventType
        """
        return cls('device_approvals_change_desktop_policy', val)

    @classmethod
    def device_approvals_change_mobile_policy(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_mobile_policy`` tag with value ``val``.

        :param DeviceApprovalsChangeMobilePolicyType val:
        :rtype: EventType
        """
        return cls('device_approvals_change_mobile_policy', val)

    @classmethod
    def device_approvals_change_overage_action(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_overage_action`` tag with value ``val``.

        :param DeviceApprovalsChangeOverageActionType val:
        :rtype: EventType
        """
        return cls('device_approvals_change_overage_action', val)

    @classmethod
    def device_approvals_change_unlink_action(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_change_unlink_action`` tag with value ``val``.

        :param DeviceApprovalsChangeUnlinkActionType val:
        :rtype: EventType
        """
        return cls('device_approvals_change_unlink_action', val)

    @classmethod
    def device_approvals_remove_exception(cls, val):
        """
        Create an instance of this class set to the
        ``device_approvals_remove_exception`` tag with value ``val``.

        :param DeviceApprovalsRemoveExceptionType val:
        :rtype: EventType
        """
        return cls('device_approvals_remove_exception', val)

    @classmethod
    def directory_restrictions_add_members(cls, val):
        """
        Create an instance of this class set to the
        ``directory_restrictions_add_members`` tag with value ``val``.

        :param DirectoryRestrictionsAddMembersType val:
        :rtype: EventType
        """
        return cls('directory_restrictions_add_members', val)

    @classmethod
    def directory_restrictions_remove_members(cls, val):
        """
        Create an instance of this class set to the
        ``directory_restrictions_remove_members`` tag with value ``val``.

        :param DirectoryRestrictionsRemoveMembersType val:
        :rtype: EventType
        """
        return cls('directory_restrictions_remove_members', val)

    @classmethod
    def dropbox_passwords_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``dropbox_passwords_policy_changed`` tag with value ``val``.

        :param DropboxPasswordsPolicyChangedType val:
        :rtype: EventType
        """
        return cls('dropbox_passwords_policy_changed', val)

    @classmethod
    def email_ingest_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``email_ingest_policy_changed`` tag with value ``val``.

        :param EmailIngestPolicyChangedType val:
        :rtype: EventType
        """
        return cls('email_ingest_policy_changed', val)

    @classmethod
    def emm_add_exception(cls, val):
        """
        Create an instance of this class set to the ``emm_add_exception`` tag
        with value ``val``.

        :param EmmAddExceptionType val:
        :rtype: EventType
        """
        return cls('emm_add_exception', val)

    @classmethod
    def emm_change_policy(cls, val):
        """
        Create an instance of this class set to the ``emm_change_policy`` tag
        with value ``val``.

        :param EmmChangePolicyType val:
        :rtype: EventType
        """
        return cls('emm_change_policy', val)

    @classmethod
    def emm_remove_exception(cls, val):
        """
        Create an instance of this class set to the ``emm_remove_exception`` tag
        with value ``val``.

        :param EmmRemoveExceptionType val:
        :rtype: EventType
        """
        return cls('emm_remove_exception', val)

    @classmethod
    def extended_version_history_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``extended_version_history_change_policy`` tag with value ``val``.

        :param ExtendedVersionHistoryChangePolicyType val:
        :rtype: EventType
        """
        return cls('extended_version_history_change_policy', val)

    @classmethod
    def external_drive_backup_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``external_drive_backup_policy_changed`` tag with value ``val``.

        :param ExternalDriveBackupPolicyChangedType val:
        :rtype: EventType
        """
        return cls('external_drive_backup_policy_changed', val)

    @classmethod
    def file_comments_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``file_comments_change_policy`` tag with value ``val``.

        :param FileCommentsChangePolicyType val:
        :rtype: EventType
        """
        return cls('file_comments_change_policy', val)

    @classmethod
    def file_locking_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``file_locking_policy_changed`` tag with value ``val``.

        :param FileLockingPolicyChangedType val:
        :rtype: EventType
        """
        return cls('file_locking_policy_changed', val)

    @classmethod
    def file_provider_migration_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``file_provider_migration_policy_changed`` tag with value ``val``.

        :param FileProviderMigrationPolicyChangedType val:
        :rtype: EventType
        """
        return cls('file_provider_migration_policy_changed', val)

    @classmethod
    def file_requests_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``file_requests_change_policy`` tag with value ``val``.

        :param FileRequestsChangePolicyType val:
        :rtype: EventType
        """
        return cls('file_requests_change_policy', val)

    @classmethod
    def file_requests_emails_enabled(cls, val):
        """
        Create an instance of this class set to the
        ``file_requests_emails_enabled`` tag with value ``val``.

        :param FileRequestsEmailsEnabledType val:
        :rtype: EventType
        """
        return cls('file_requests_emails_enabled', val)

    @classmethod
    def file_requests_emails_restricted_to_team_only(cls, val):
        """
        Create an instance of this class set to the
        ``file_requests_emails_restricted_to_team_only`` tag with value ``val``.

        :param FileRequestsEmailsRestrictedToTeamOnlyType val:
        :rtype: EventType
        """
        return cls('file_requests_emails_restricted_to_team_only', val)

    @classmethod
    def file_transfers_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``file_transfers_policy_changed`` tag with value ``val``.

        :param FileTransfersPolicyChangedType val:
        :rtype: EventType
        """
        return cls('file_transfers_policy_changed', val)

    @classmethod
    def folder_link_restriction_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``folder_link_restriction_policy_changed`` tag with value ``val``.

        :param FolderLinkRestrictionPolicyChangedType val:
        :rtype: EventType
        """
        return cls('folder_link_restriction_policy_changed', val)

    @classmethod
    def google_sso_change_policy(cls, val):
        """
        Create an instance of this class set to the ``google_sso_change_policy``
        tag with value ``val``.

        :param GoogleSsoChangePolicyType val:
        :rtype: EventType
        """
        return cls('google_sso_change_policy', val)

    @classmethod
    def group_user_management_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``group_user_management_change_policy`` tag with value ``val``.

        :param GroupUserManagementChangePolicyType val:
        :rtype: EventType
        """
        return cls('group_user_management_change_policy', val)

    @classmethod
    def integration_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``integration_policy_changed`` tag with value ``val``.

        :param IntegrationPolicyChangedType val:
        :rtype: EventType
        """
        return cls('integration_policy_changed', val)

    @classmethod
    def invite_acceptance_email_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``invite_acceptance_email_policy_changed`` tag with value ``val``.

        :param InviteAcceptanceEmailPolicyChangedType val:
        :rtype: EventType
        """
        return cls('invite_acceptance_email_policy_changed', val)

    @classmethod
    def member_requests_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``member_requests_change_policy`` tag with value ``val``.

        :param MemberRequestsChangePolicyType val:
        :rtype: EventType
        """
        return cls('member_requests_change_policy', val)

    @classmethod
    def member_send_invite_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``member_send_invite_policy_changed`` tag with value ``val``.

        :param MemberSendInvitePolicyChangedType val:
        :rtype: EventType
        """
        return cls('member_send_invite_policy_changed', val)

    @classmethod
    def member_space_limits_add_exception(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_add_exception`` tag with value ``val``.

        :param MemberSpaceLimitsAddExceptionType val:
        :rtype: EventType
        """
        return cls('member_space_limits_add_exception', val)

    @classmethod
    def member_space_limits_change_caps_type_policy(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_caps_type_policy`` tag with value ``val``.

        :param MemberSpaceLimitsChangeCapsTypePolicyType val:
        :rtype: EventType
        """
        return cls('member_space_limits_change_caps_type_policy', val)

    @classmethod
    def member_space_limits_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_change_policy`` tag with value ``val``.

        :param MemberSpaceLimitsChangePolicyType val:
        :rtype: EventType
        """
        return cls('member_space_limits_change_policy', val)

    @classmethod
    def member_space_limits_remove_exception(cls, val):
        """
        Create an instance of this class set to the
        ``member_space_limits_remove_exception`` tag with value ``val``.

        :param MemberSpaceLimitsRemoveExceptionType val:
        :rtype: EventType
        """
        return cls('member_space_limits_remove_exception', val)

    @classmethod
    def member_suggestions_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``member_suggestions_change_policy`` tag with value ``val``.

        :param MemberSuggestionsChangePolicyType val:
        :rtype: EventType
        """
        return cls('member_suggestions_change_policy', val)

    @classmethod
    def microsoft_office_addin_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``microsoft_office_addin_change_policy`` tag with value ``val``.

        :param MicrosoftOfficeAddinChangePolicyType val:
        :rtype: EventType
        """
        return cls('microsoft_office_addin_change_policy', val)

    @classmethod
    def network_control_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``network_control_change_policy`` tag with value ``val``.

        :param NetworkControlChangePolicyType val:
        :rtype: EventType
        """
        return cls('network_control_change_policy', val)

    @classmethod
    def paper_change_deployment_policy(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_deployment_policy`` tag with value ``val``.

        :param PaperChangeDeploymentPolicyType val:
        :rtype: EventType
        """
        return cls('paper_change_deployment_policy', val)

    @classmethod
    def paper_change_member_link_policy(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_member_link_policy`` tag with value ``val``.

        :param PaperChangeMemberLinkPolicyType val:
        :rtype: EventType
        """
        return cls('paper_change_member_link_policy', val)

    @classmethod
    def paper_change_member_policy(cls, val):
        """
        Create an instance of this class set to the
        ``paper_change_member_policy`` tag with value ``val``.

        :param PaperChangeMemberPolicyType val:
        :rtype: EventType
        """
        return cls('paper_change_member_policy', val)

    @classmethod
    def paper_change_policy(cls, val):
        """
        Create an instance of this class set to the ``paper_change_policy`` tag
        with value ``val``.

        :param PaperChangePolicyType val:
        :rtype: EventType
        """
        return cls('paper_change_policy', val)

    @classmethod
    def paper_default_folder_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``paper_default_folder_policy_changed`` tag with value ``val``.

        :param PaperDefaultFolderPolicyChangedType val:
        :rtype: EventType
        """
        return cls('paper_default_folder_policy_changed', val)

    @classmethod
    def paper_desktop_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``paper_desktop_policy_changed`` tag with value ``val``.

        :param PaperDesktopPolicyChangedType val:
        :rtype: EventType
        """
        return cls('paper_desktop_policy_changed', val)

    @classmethod
    def paper_enabled_users_group_addition(cls, val):
        """
        Create an instance of this class set to the
        ``paper_enabled_users_group_addition`` tag with value ``val``.

        :param PaperEnabledUsersGroupAdditionType val:
        :rtype: EventType
        """
        return cls('paper_enabled_users_group_addition', val)

    @classmethod
    def paper_enabled_users_group_removal(cls, val):
        """
        Create an instance of this class set to the
        ``paper_enabled_users_group_removal`` tag with value ``val``.

        :param PaperEnabledUsersGroupRemovalType val:
        :rtype: EventType
        """
        return cls('paper_enabled_users_group_removal', val)

    @classmethod
    def password_strength_requirements_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``password_strength_requirements_change_policy`` tag with value ``val``.

        :param PasswordStrengthRequirementsChangePolicyType val:
        :rtype: EventType
        """
        return cls('password_strength_requirements_change_policy', val)

    @classmethod
    def permanent_delete_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``permanent_delete_change_policy`` tag with value ``val``.

        :param PermanentDeleteChangePolicyType val:
        :rtype: EventType
        """
        return cls('permanent_delete_change_policy', val)

    @classmethod
    def reseller_support_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``reseller_support_change_policy`` tag with value ``val``.

        :param ResellerSupportChangePolicyType val:
        :rtype: EventType
        """
        return cls('reseller_support_change_policy', val)

    @classmethod
    def rewind_policy_changed(cls, val):
        """
        Create an instance of this class set to the ``rewind_policy_changed``
        tag with value ``val``.

        :param RewindPolicyChangedType val:
        :rtype: EventType
        """
        return cls('rewind_policy_changed', val)

    @classmethod
    def send_for_signature_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``send_for_signature_policy_changed`` tag with value ``val``.

        :param SendForSignaturePolicyChangedType val:
        :rtype: EventType
        """
        return cls('send_for_signature_policy_changed', val)

    @classmethod
    def sharing_change_folder_join_policy(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_folder_join_policy`` tag with value ``val``.

        :param SharingChangeFolderJoinPolicyType val:
        :rtype: EventType
        """
        return cls('sharing_change_folder_join_policy', val)

    @classmethod
    def sharing_change_link_allow_change_expiration_policy(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_allow_change_expiration_policy`` tag with value
        ``val``.

        :param SharingChangeLinkAllowChangeExpirationPolicyType val:
        :rtype: EventType
        """
        return cls('sharing_change_link_allow_change_expiration_policy', val)

    @classmethod
    def sharing_change_link_default_expiration_policy(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_default_expiration_policy`` tag with value
        ``val``.

        :param SharingChangeLinkDefaultExpirationPolicyType val:
        :rtype: EventType
        """
        return cls('sharing_change_link_default_expiration_policy', val)

    @classmethod
    def sharing_change_link_enforce_password_policy(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_enforce_password_policy`` tag with value ``val``.

        :param SharingChangeLinkEnforcePasswordPolicyType val:
        :rtype: EventType
        """
        return cls('sharing_change_link_enforce_password_policy', val)

    @classmethod
    def sharing_change_link_policy(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_link_policy`` tag with value ``val``.

        :param SharingChangeLinkPolicyType val:
        :rtype: EventType
        """
        return cls('sharing_change_link_policy', val)

    @classmethod
    def sharing_change_member_policy(cls, val):
        """
        Create an instance of this class set to the
        ``sharing_change_member_policy`` tag with value ``val``.

        :param SharingChangeMemberPolicyType val:
        :rtype: EventType
        """
        return cls('sharing_change_member_policy', val)

    @classmethod
    def showcase_change_download_policy(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_change_download_policy`` tag with value ``val``.

        :param ShowcaseChangeDownloadPolicyType val:
        :rtype: EventType
        """
        return cls('showcase_change_download_policy', val)

    @classmethod
    def showcase_change_enabled_policy(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_change_enabled_policy`` tag with value ``val``.

        :param ShowcaseChangeEnabledPolicyType val:
        :rtype: EventType
        """
        return cls('showcase_change_enabled_policy', val)

    @classmethod
    def showcase_change_external_sharing_policy(cls, val):
        """
        Create an instance of this class set to the
        ``showcase_change_external_sharing_policy`` tag with value ``val``.

        :param ShowcaseChangeExternalSharingPolicyType val:
        :rtype: EventType
        """
        return cls('showcase_change_external_sharing_policy', val)

    @classmethod
    def smarter_smart_sync_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``smarter_smart_sync_policy_changed`` tag with value ``val``.

        :param SmarterSmartSyncPolicyChangedType val:
        :rtype: EventType
        """
        return cls('smarter_smart_sync_policy_changed', val)

    @classmethod
    def smart_sync_change_policy(cls, val):
        """
        Create an instance of this class set to the ``smart_sync_change_policy``
        tag with value ``val``.

        :param SmartSyncChangePolicyType val:
        :rtype: EventType
        """
        return cls('smart_sync_change_policy', val)

    @classmethod
    def smart_sync_not_opt_out(cls, val):
        """
        Create an instance of this class set to the ``smart_sync_not_opt_out``
        tag with value ``val``.

        :param SmartSyncNotOptOutType val:
        :rtype: EventType
        """
        return cls('smart_sync_not_opt_out', val)

    @classmethod
    def smart_sync_opt_out(cls, val):
        """
        Create an instance of this class set to the ``smart_sync_opt_out`` tag
        with value ``val``.

        :param SmartSyncOptOutType val:
        :rtype: EventType
        """
        return cls('smart_sync_opt_out', val)

    @classmethod
    def sso_change_policy(cls, val):
        """
        Create an instance of this class set to the ``sso_change_policy`` tag
        with value ``val``.

        :param SsoChangePolicyType val:
        :rtype: EventType
        """
        return cls('sso_change_policy', val)

    @classmethod
    def team_branding_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``team_branding_policy_changed`` tag with value ``val``.

        :param TeamBrandingPolicyChangedType val:
        :rtype: EventType
        """
        return cls('team_branding_policy_changed', val)

    @classmethod
    def team_extensions_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``team_extensions_policy_changed`` tag with value ``val``.

        :param TeamExtensionsPolicyChangedType val:
        :rtype: EventType
        """
        return cls('team_extensions_policy_changed', val)

    @classmethod
    def team_selective_sync_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``team_selective_sync_policy_changed`` tag with value ``val``.

        :param TeamSelectiveSyncPolicyChangedType val:
        :rtype: EventType
        """
        return cls('team_selective_sync_policy_changed', val)

    @classmethod
    def team_sharing_whitelist_subjects_changed(cls, val):
        """
        Create an instance of this class set to the
        ``team_sharing_whitelist_subjects_changed`` tag with value ``val``.

        :param TeamSharingWhitelistSubjectsChangedType val:
        :rtype: EventType
        """
        return cls('team_sharing_whitelist_subjects_changed', val)

    @classmethod
    def tfa_add_exception(cls, val):
        """
        Create an instance of this class set to the ``tfa_add_exception`` tag
        with value ``val``.

        :param TfaAddExceptionType val:
        :rtype: EventType
        """
        return cls('tfa_add_exception', val)

    @classmethod
    def tfa_change_policy(cls, val):
        """
        Create an instance of this class set to the ``tfa_change_policy`` tag
        with value ``val``.

        :param TfaChangePolicyType val:
        :rtype: EventType
        """
        return cls('tfa_change_policy', val)

    @classmethod
    def tfa_remove_exception(cls, val):
        """
        Create an instance of this class set to the ``tfa_remove_exception`` tag
        with value ``val``.

        :param TfaRemoveExceptionType val:
        :rtype: EventType
        """
        return cls('tfa_remove_exception', val)

    @classmethod
    def two_account_change_policy(cls, val):
        """
        Create an instance of this class set to the
        ``two_account_change_policy`` tag with value ``val``.

        :param TwoAccountChangePolicyType val:
        :rtype: EventType
        """
        return cls('two_account_change_policy', val)

    @classmethod
    def viewer_info_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``viewer_info_policy_changed`` tag with value ``val``.

        :param ViewerInfoPolicyChangedType val:
        :rtype: EventType
        """
        return cls('viewer_info_policy_changed', val)

    @classmethod
    def watermarking_policy_changed(cls, val):
        """
        Create an instance of this class set to the
        ``watermarking_policy_changed`` tag with value ``val``.

        :param WatermarkingPolicyChangedType val:
        :rtype: EventType
        """
        return cls('watermarking_policy_changed', val)

    @classmethod
    def web_sessions_change_active_session_limit(cls, val):
        """
        Create an instance of this class set to the
        ``web_sessions_change_active_session_limit`` tag with value ``val``.

        :param WebSessionsChangeActiveSessionLimitType val:
        :rtype: EventType
        """
        return cls('web_sessions_change_active_session_limit', val)

    @classmethod
    def web_sessions_change_fixed_length_policy(cls, val):
        """
        Create an instance of this class set to the
        ``web_sessions_change_fixed_length_policy`` tag with value ``val``.

        :param WebSessionsChangeFixedLengthPolicyType val:
        :rtype: EventType
        """
        return cls('web_sessions_change_fixed_length_policy', val)

    @classmethod
    def web_sessions_change_idle_length_policy(cls, val):
        """
        Create an instance of this class set to the
        ``web_sessions_change_idle_length_policy`` tag with value ``val``.

        :param WebSessionsChangeIdleLengthPolicyType val:
        :rtype: EventType
        """
        return cls('web_sessions_change_idle_length_policy', val)

    @classmethod
    def data_residency_migration_request_successful(cls, val):
        """
        Create an instance of this class set to the
        ``data_residency_migration_request_successful`` tag with value ``val``.

        :param DataResidencyMigrationRequestSuccessfulType val:
        :rtype: EventType
        """
        return cls('data_residency_migration_request_successful', val)

    @classmethod
    def data_residency_migration_request_unsuccessful(cls, val):
        """
        Create an instance of this class set to the
        ``data_residency_migration_request_unsuccessful`` tag with value
        ``val``.

        :param DataResidencyMigrationRequestUnsuccessfulType val:
        :rtype: EventType
        """
        return cls('data_residency_migration_request_unsuccessful', val)

    @classmethod
    def team_merge_from(cls, val):
        """
        Create an instance of this class set to the ``team_merge_from`` tag with
        value ``val``.

        :param TeamMergeFromType val:
        :rtype: EventType
        """
        return cls('team_merge_from', val)

    @classmethod
    def team_merge_to(cls, val):
        """
        Create an instance of this class set to the ``team_merge_to`` tag with
        value ``val``.

        :param TeamMergeToType val:
        :rtype: EventType
        """
        return cls('team_merge_to', val)

    @classmethod
    def team_profile_add_background(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_add_background`` tag with value ``val``.

        :param TeamProfileAddBackgroundType val:
        :rtype: EventType
        """
        return cls('team_profile_add_background', val)

    @classmethod
    def team_profile_add_logo(cls, val):
        """
        Create an instance of this class set to the ``team_profile_add_logo``
        tag with value ``val``.

        :param TeamProfileAddLogoType val:
        :rtype: EventType
        """
        return cls('team_profile_add_logo', val)

    @classmethod
    def team_profile_change_background(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_change_background`` tag with value ``val``.

        :param TeamProfileChangeBackgroundType val:
        :rtype: EventType
        """
        return cls('team_profile_change_background', val)

    @classmethod
    def team_profile_change_default_language(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_change_default_language`` tag with value ``val``.

        :param TeamProfileChangeDefaultLanguageType val:
        :rtype: EventType
        """
        return cls('team_profile_change_default_language', val)

    @classmethod
    def team_profile_change_logo(cls, val):
        """
        Create an instance of this class set to the ``team_profile_change_logo``
        tag with value ``val``.

        :param TeamProfileChangeLogoType val:
        :rtype: EventType
        """
        return cls('team_profile_change_logo', val)

    @classmethod
    def team_profile_change_name(cls, val):
        """
        Create an instance of this class set to the ``team_profile_change_name``
        tag with value ``val``.

        :param TeamProfileChangeNameType val:
        :rtype: EventType
        """
        return cls('team_profile_change_name', val)

    @classmethod
    def team_profile_remove_background(cls, val):
        """
        Create an instance of this class set to the
        ``team_profile_remove_background`` tag with value ``val``.

        :param TeamProfileRemoveBackgroundType val:
        :rtype: EventType
        """
        return cls('team_profile_remove_background', val)

    @classmethod
    def team_profile_remove_logo(cls, val):
        """
        Create an instance of this class set to the ``team_profile_remove_logo``
        tag with value ``val``.

        :param TeamProfileRemoveLogoType val:
        :rtype: EventType
        """
        return cls('team_profile_remove_logo', val)

    @classmethod
    def tfa_add_backup_phone(cls, val):
        """
        Create an instance of this class set to the ``tfa_add_backup_phone`` tag
        with value ``val``.

        :param TfaAddBackupPhoneType val:
        :rtype: EventType
        """
        return cls('tfa_add_backup_phone', val)

    @classmethod
    def tfa_add_security_key(cls, val):
        """
        Create an instance of this class set to the ``tfa_add_security_key`` tag
        with value ``val``.

        :param TfaAddSecurityKeyType val:
        :rtype: EventType
        """
        return cls('tfa_add_security_key', val)

    @classmethod
    def tfa_change_backup_phone(cls, val):
        """
        Create an instance of this class set to the ``tfa_change_backup_phone``
        tag with value ``val``.

        :param TfaChangeBackupPhoneType val:
        :rtype: EventType
        """
        return cls('tfa_change_backup_phone', val)

    @classmethod
    def tfa_change_status(cls, val):
        """
        Create an instance of this class set to the ``tfa_change_status`` tag
        with value ``val``.

        :param TfaChangeStatusType val:
        :rtype: EventType
        """
        return cls('tfa_change_status', val)

    @classmethod
    def tfa_remove_backup_phone(cls, val):
        """
        Create an instance of this class set to the ``tfa_remove_backup_phone``
        tag with value ``val``.

        :param TfaRemoveBackupPhoneType val:
        :rtype: EventType
        """
        return cls('tfa_remove_backup_phone', val)

    @classmethod
    def tfa_remove_security_key(cls, val):
        """
        Create an instance of this class set to the ``tfa_remove_security_key``
        tag with value ``val``.

        :param TfaRemoveSecurityKeyType val:
        :rtype: EventType
        """
        return cls('tfa_remove_security_key', val)

    @classmethod
    def tfa_reset(cls, val):
        """
        Create an instance of this class set to the ``tfa_reset`` tag with value
        ``val``.

        :param TfaResetType val:
        :rtype: EventType
        """
        return cls('tfa_reset', val)

    @classmethod
    def changed_enterprise_admin_role(cls, val):
        """
        Create an instance of this class set to the
        ``changed_enterprise_admin_role`` tag with value ``val``.

        :param ChangedEnterpriseAdminRoleType val:
        :rtype: EventType
        """
        return cls('changed_enterprise_admin_role', val)

    @classmethod
    def changed_enterprise_connected_team_status(cls, val):
        """
        Create an instance of this class set to the
        ``changed_enterprise_connected_team_status`` tag with value ``val``.

        :param ChangedEnterpriseConnectedTeamStatusType val:
        :rtype: EventType
        """
        return cls('changed_enterprise_connected_team_status', val)

    @classmethod
    def ended_enterprise_admin_session(cls, val):
        """
        Create an instance of this class set to the
        ``ended_enterprise_admin_session`` tag with value ``val``.

        :param EndedEnterpriseAdminSessionType val:
        :rtype: EventType
        """
        return cls('ended_enterprise_admin_session', val)

    @classmethod
    def ended_enterprise_admin_session_deprecated(cls, val):
        """
        Create an instance of this class set to the
        ``ended_enterprise_admin_session_deprecated`` tag with value ``val``.

        :param EndedEnterpriseAdminSessionDeprecatedType val:
        :rtype: EventType
        """
        return cls('ended_enterprise_admin_session_deprecated', val)

    @classmethod
    def enterprise_settings_locking(cls, val):
        """
        Create an instance of this class set to the
        ``enterprise_settings_locking`` tag with value ``val``.

        :param EnterpriseSettingsLockingType val:
        :rtype: EventType
        """
        return cls('enterprise_settings_locking', val)

    @classmethod
    def guest_admin_change_status(cls, val):
        """
        Create an instance of this class set to the
        ``guest_admin_change_status`` tag with value ``val``.

        :param GuestAdminChangeStatusType val:
        :rtype: EventType
        """
        return cls('guest_admin_change_status', val)

    @classmethod
    def started_enterprise_admin_session(cls, val):
        """
        Create an instance of this class set to the
        ``started_enterprise_admin_session`` tag with value ``val``.

        :param StartedEnterpriseAdminSessionType val:
        :rtype: EventType
        """
        return cls('started_enterprise_admin_session', val)

    @classmethod
    def team_merge_request_accepted(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_accepted`` tag with value ``val``.

        :param TeamMergeRequestAcceptedType val:
        :rtype: EventType
        """
        return cls('team_merge_request_accepted', val)

    @classmethod
    def team_merge_request_accepted_shown_to_primary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_accepted_shown_to_primary_team`` tag with value
        ``val``.

        :param TeamMergeRequestAcceptedShownToPrimaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_accepted_shown_to_primary_team', val)

    @classmethod
    def team_merge_request_accepted_shown_to_secondary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_accepted_shown_to_secondary_team`` tag with value
        ``val``.

        :param TeamMergeRequestAcceptedShownToSecondaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_accepted_shown_to_secondary_team', val)

    @classmethod
    def team_merge_request_auto_canceled(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_auto_canceled`` tag with value ``val``.

        :param TeamMergeRequestAutoCanceledType val:
        :rtype: EventType
        """
        return cls('team_merge_request_auto_canceled', val)

    @classmethod
    def team_merge_request_canceled(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_canceled`` tag with value ``val``.

        :param TeamMergeRequestCanceledType val:
        :rtype: EventType
        """
        return cls('team_merge_request_canceled', val)

    @classmethod
    def team_merge_request_canceled_shown_to_primary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_canceled_shown_to_primary_team`` tag with value
        ``val``.

        :param TeamMergeRequestCanceledShownToPrimaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_canceled_shown_to_primary_team', val)

    @classmethod
    def team_merge_request_canceled_shown_to_secondary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_canceled_shown_to_secondary_team`` tag with value
        ``val``.

        :param TeamMergeRequestCanceledShownToSecondaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_canceled_shown_to_secondary_team', val)

    @classmethod
    def team_merge_request_expired(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_expired`` tag with value ``val``.

        :param TeamMergeRequestExpiredType val:
        :rtype: EventType
        """
        return cls('team_merge_request_expired', val)

    @classmethod
    def team_merge_request_expired_shown_to_primary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_expired_shown_to_primary_team`` tag with value
        ``val``.

        :param TeamMergeRequestExpiredShownToPrimaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_expired_shown_to_primary_team', val)

    @classmethod
    def team_merge_request_expired_shown_to_secondary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_expired_shown_to_secondary_team`` tag with value
        ``val``.

        :param TeamMergeRequestExpiredShownToSecondaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_expired_shown_to_secondary_team', val)

    @classmethod
    def team_merge_request_rejected_shown_to_primary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_rejected_shown_to_primary_team`` tag with value
        ``val``.

        :param TeamMergeRequestRejectedShownToPrimaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_rejected_shown_to_primary_team', val)

    @classmethod
    def team_merge_request_rejected_shown_to_secondary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_rejected_shown_to_secondary_team`` tag with value
        ``val``.

        :param TeamMergeRequestRejectedShownToSecondaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_rejected_shown_to_secondary_team', val)

    @classmethod
    def team_merge_request_reminder(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_reminder`` tag with value ``val``.

        :param TeamMergeRequestReminderType val:
        :rtype: EventType
        """
        return cls('team_merge_request_reminder', val)

    @classmethod
    def team_merge_request_reminder_shown_to_primary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_reminder_shown_to_primary_team`` tag with value
        ``val``.

        :param TeamMergeRequestReminderShownToPrimaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_reminder_shown_to_primary_team', val)

    @classmethod
    def team_merge_request_reminder_shown_to_secondary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_reminder_shown_to_secondary_team`` tag with value
        ``val``.

        :param TeamMergeRequestReminderShownToSecondaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_reminder_shown_to_secondary_team', val)

    @classmethod
    def team_merge_request_revoked(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_revoked`` tag with value ``val``.

        :param TeamMergeRequestRevokedType val:
        :rtype: EventType
        """
        return cls('team_merge_request_revoked', val)

    @classmethod
    def team_merge_request_sent_shown_to_primary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_sent_shown_to_primary_team`` tag with value
        ``val``.

        :param TeamMergeRequestSentShownToPrimaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_sent_shown_to_primary_team', val)

    @classmethod
    def team_merge_request_sent_shown_to_secondary_team(cls, val):
        """
        Create an instance of this class set to the
        ``team_merge_request_sent_shown_to_secondary_team`` tag with value
        ``val``.

        :param TeamMergeRequestSentShownToSecondaryTeamType val:
        :rtype: EventType
        """
        return cls('team_merge_request_sent_shown_to_secondary_team', val)

    def is_admin_alerting_alert_state_changed(self):
        """
        Check if the union tag is ``admin_alerting_alert_state_changed``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_alert_state_changed'

    def is_admin_alerting_changed_alert_config(self):
        """
        Check if the union tag is ``admin_alerting_changed_alert_config``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_changed_alert_config'

    def is_admin_alerting_triggered_alert(self):
        """
        Check if the union tag is ``admin_alerting_triggered_alert``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_triggered_alert'

    def is_app_blocked_by_permissions(self):
        """
        Check if the union tag is ``app_blocked_by_permissions``.

        :rtype: bool
        """
        return self._tag == 'app_blocked_by_permissions'

    def is_app_link_team(self):
        """
        Check if the union tag is ``app_link_team``.

        :rtype: bool
        """
        return self._tag == 'app_link_team'

    def is_app_link_user(self):
        """
        Check if the union tag is ``app_link_user``.

        :rtype: bool
        """
        return self._tag == 'app_link_user'

    def is_app_unlink_team(self):
        """
        Check if the union tag is ``app_unlink_team``.

        :rtype: bool
        """
        return self._tag == 'app_unlink_team'

    def is_app_unlink_user(self):
        """
        Check if the union tag is ``app_unlink_user``.

        :rtype: bool
        """
        return self._tag == 'app_unlink_user'

    def is_integration_connected(self):
        """
        Check if the union tag is ``integration_connected``.

        :rtype: bool
        """
        return self._tag == 'integration_connected'

    def is_integration_disconnected(self):
        """
        Check if the union tag is ``integration_disconnected``.

        :rtype: bool
        """
        return self._tag == 'integration_disconnected'

    def is_file_add_comment(self):
        """
        Check if the union tag is ``file_add_comment``.

        :rtype: bool
        """
        return self._tag == 'file_add_comment'

    def is_file_change_comment_subscription(self):
        """
        Check if the union tag is ``file_change_comment_subscription``.

        :rtype: bool
        """
        return self._tag == 'file_change_comment_subscription'

    def is_file_delete_comment(self):
        """
        Check if the union tag is ``file_delete_comment``.

        :rtype: bool
        """
        return self._tag == 'file_delete_comment'

    def is_file_edit_comment(self):
        """
        Check if the union tag is ``file_edit_comment``.

        :rtype: bool
        """
        return self._tag == 'file_edit_comment'

    def is_file_like_comment(self):
        """
        Check if the union tag is ``file_like_comment``.

        :rtype: bool
        """
        return self._tag == 'file_like_comment'

    def is_file_resolve_comment(self):
        """
        Check if the union tag is ``file_resolve_comment``.

        :rtype: bool
        """
        return self._tag == 'file_resolve_comment'

    def is_file_unlike_comment(self):
        """
        Check if the union tag is ``file_unlike_comment``.

        :rtype: bool
        """
        return self._tag == 'file_unlike_comment'

    def is_file_unresolve_comment(self):
        """
        Check if the union tag is ``file_unresolve_comment``.

        :rtype: bool
        """
        return self._tag == 'file_unresolve_comment'

    def is_governance_policy_add_folders(self):
        """
        Check if the union tag is ``governance_policy_add_folders``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_add_folders'

    def is_governance_policy_add_folder_failed(self):
        """
        Check if the union tag is ``governance_policy_add_folder_failed``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_add_folder_failed'

    def is_governance_policy_content_disposed(self):
        """
        Check if the union tag is ``governance_policy_content_disposed``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_content_disposed'

    def is_governance_policy_create(self):
        """
        Check if the union tag is ``governance_policy_create``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_create'

    def is_governance_policy_delete(self):
        """
        Check if the union tag is ``governance_policy_delete``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_delete'

    def is_governance_policy_edit_details(self):
        """
        Check if the union tag is ``governance_policy_edit_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_edit_details'

    def is_governance_policy_edit_duration(self):
        """
        Check if the union tag is ``governance_policy_edit_duration``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_edit_duration'

    def is_governance_policy_export_created(self):
        """
        Check if the union tag is ``governance_policy_export_created``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_export_created'

    def is_governance_policy_export_removed(self):
        """
        Check if the union tag is ``governance_policy_export_removed``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_export_removed'

    def is_governance_policy_remove_folders(self):
        """
        Check if the union tag is ``governance_policy_remove_folders``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_remove_folders'

    def is_governance_policy_report_created(self):
        """
        Check if the union tag is ``governance_policy_report_created``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_report_created'

    def is_governance_policy_zip_part_downloaded(self):
        """
        Check if the union tag is ``governance_policy_zip_part_downloaded``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_zip_part_downloaded'

    def is_legal_holds_activate_a_hold(self):
        """
        Check if the union tag is ``legal_holds_activate_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_activate_a_hold'

    def is_legal_holds_add_members(self):
        """
        Check if the union tag is ``legal_holds_add_members``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_add_members'

    def is_legal_holds_change_hold_details(self):
        """
        Check if the union tag is ``legal_holds_change_hold_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_change_hold_details'

    def is_legal_holds_change_hold_name(self):
        """
        Check if the union tag is ``legal_holds_change_hold_name``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_change_hold_name'

    def is_legal_holds_export_a_hold(self):
        """
        Check if the union tag is ``legal_holds_export_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_a_hold'

    def is_legal_holds_export_cancelled(self):
        """
        Check if the union tag is ``legal_holds_export_cancelled``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_cancelled'

    def is_legal_holds_export_downloaded(self):
        """
        Check if the union tag is ``legal_holds_export_downloaded``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_downloaded'

    def is_legal_holds_export_removed(self):
        """
        Check if the union tag is ``legal_holds_export_removed``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_removed'

    def is_legal_holds_release_a_hold(self):
        """
        Check if the union tag is ``legal_holds_release_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_release_a_hold'

    def is_legal_holds_remove_members(self):
        """
        Check if the union tag is ``legal_holds_remove_members``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_remove_members'

    def is_legal_holds_report_a_hold(self):
        """
        Check if the union tag is ``legal_holds_report_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_report_a_hold'

    def is_device_change_ip_desktop(self):
        """
        Check if the union tag is ``device_change_ip_desktop``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_desktop'

    def is_device_change_ip_mobile(self):
        """
        Check if the union tag is ``device_change_ip_mobile``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_mobile'

    def is_device_change_ip_web(self):
        """
        Check if the union tag is ``device_change_ip_web``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_web'

    def is_device_delete_on_unlink_fail(self):
        """
        Check if the union tag is ``device_delete_on_unlink_fail``.

        :rtype: bool
        """
        return self._tag == 'device_delete_on_unlink_fail'

    def is_device_delete_on_unlink_success(self):
        """
        Check if the union tag is ``device_delete_on_unlink_success``.

        :rtype: bool
        """
        return self._tag == 'device_delete_on_unlink_success'

    def is_device_link_fail(self):
        """
        Check if the union tag is ``device_link_fail``.

        :rtype: bool
        """
        return self._tag == 'device_link_fail'

    def is_device_link_success(self):
        """
        Check if the union tag is ``device_link_success``.

        :rtype: bool
        """
        return self._tag == 'device_link_success'

    def is_device_management_disabled(self):
        """
        Check if the union tag is ``device_management_disabled``.

        :rtype: bool
        """
        return self._tag == 'device_management_disabled'

    def is_device_management_enabled(self):
        """
        Check if the union tag is ``device_management_enabled``.

        :rtype: bool
        """
        return self._tag == 'device_management_enabled'

    def is_device_sync_backup_status_changed(self):
        """
        Check if the union tag is ``device_sync_backup_status_changed``.

        :rtype: bool
        """
        return self._tag == 'device_sync_backup_status_changed'

    def is_device_unlink(self):
        """
        Check if the union tag is ``device_unlink``.

        :rtype: bool
        """
        return self._tag == 'device_unlink'

    def is_dropbox_passwords_exported(self):
        """
        Check if the union tag is ``dropbox_passwords_exported``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_exported'

    def is_dropbox_passwords_new_device_enrolled(self):
        """
        Check if the union tag is ``dropbox_passwords_new_device_enrolled``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_new_device_enrolled'

    def is_emm_refresh_auth_token(self):
        """
        Check if the union tag is ``emm_refresh_auth_token``.

        :rtype: bool
        """
        return self._tag == 'emm_refresh_auth_token'

    def is_external_drive_backup_eligibility_status_checked(self):
        """
        Check if the union tag is ``external_drive_backup_eligibility_status_checked``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_eligibility_status_checked'

    def is_external_drive_backup_status_changed(self):
        """
        Check if the union tag is ``external_drive_backup_status_changed``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_status_changed'

    def is_account_capture_change_availability(self):
        """
        Check if the union tag is ``account_capture_change_availability``.

        :rtype: bool
        """
        return self._tag == 'account_capture_change_availability'

    def is_account_capture_migrate_account(self):
        """
        Check if the union tag is ``account_capture_migrate_account``.

        :rtype: bool
        """
        return self._tag == 'account_capture_migrate_account'

    def is_account_capture_notification_emails_sent(self):
        """
        Check if the union tag is ``account_capture_notification_emails_sent``.

        :rtype: bool
        """
        return self._tag == 'account_capture_notification_emails_sent'

    def is_account_capture_relinquish_account(self):
        """
        Check if the union tag is ``account_capture_relinquish_account``.

        :rtype: bool
        """
        return self._tag == 'account_capture_relinquish_account'

    def is_disabled_domain_invites(self):
        """
        Check if the union tag is ``disabled_domain_invites``.

        :rtype: bool
        """
        return self._tag == 'disabled_domain_invites'

    def is_domain_invites_approve_request_to_join_team(self):
        """
        Check if the union tag is ``domain_invites_approve_request_to_join_team``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_approve_request_to_join_team'

    def is_domain_invites_decline_request_to_join_team(self):
        """
        Check if the union tag is ``domain_invites_decline_request_to_join_team``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_decline_request_to_join_team'

    def is_domain_invites_email_existing_users(self):
        """
        Check if the union tag is ``domain_invites_email_existing_users``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_email_existing_users'

    def is_domain_invites_request_to_join_team(self):
        """
        Check if the union tag is ``domain_invites_request_to_join_team``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_request_to_join_team'

    def is_domain_invites_set_invite_new_user_pref_to_no(self):
        """
        Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_no``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_set_invite_new_user_pref_to_no'

    def is_domain_invites_set_invite_new_user_pref_to_yes(self):
        """
        Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_yes``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_set_invite_new_user_pref_to_yes'

    def is_domain_verification_add_domain_fail(self):
        """
        Check if the union tag is ``domain_verification_add_domain_fail``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_add_domain_fail'

    def is_domain_verification_add_domain_success(self):
        """
        Check if the union tag is ``domain_verification_add_domain_success``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_add_domain_success'

    def is_domain_verification_remove_domain(self):
        """
        Check if the union tag is ``domain_verification_remove_domain``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_remove_domain'

    def is_enabled_domain_invites(self):
        """
        Check if the union tag is ``enabled_domain_invites``.

        :rtype: bool
        """
        return self._tag == 'enabled_domain_invites'

    def is_apply_naming_convention(self):
        """
        Check if the union tag is ``apply_naming_convention``.

        :rtype: bool
        """
        return self._tag == 'apply_naming_convention'

    def is_create_folder(self):
        """
        Check if the union tag is ``create_folder``.

        :rtype: bool
        """
        return self._tag == 'create_folder'

    def is_file_add(self):
        """
        Check if the union tag is ``file_add``.

        :rtype: bool
        """
        return self._tag == 'file_add'

    def is_file_copy(self):
        """
        Check if the union tag is ``file_copy``.

        :rtype: bool
        """
        return self._tag == 'file_copy'

    def is_file_delete(self):
        """
        Check if the union tag is ``file_delete``.

        :rtype: bool
        """
        return self._tag == 'file_delete'

    def is_file_download(self):
        """
        Check if the union tag is ``file_download``.

        :rtype: bool
        """
        return self._tag == 'file_download'

    def is_file_edit(self):
        """
        Check if the union tag is ``file_edit``.

        :rtype: bool
        """
        return self._tag == 'file_edit'

    def is_file_get_copy_reference(self):
        """
        Check if the union tag is ``file_get_copy_reference``.

        :rtype: bool
        """
        return self._tag == 'file_get_copy_reference'

    def is_file_locking_lock_status_changed(self):
        """
        Check if the union tag is ``file_locking_lock_status_changed``.

        :rtype: bool
        """
        return self._tag == 'file_locking_lock_status_changed'

    def is_file_move(self):
        """
        Check if the union tag is ``file_move``.

        :rtype: bool
        """
        return self._tag == 'file_move'

    def is_file_permanently_delete(self):
        """
        Check if the union tag is ``file_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'file_permanently_delete'

    def is_file_preview(self):
        """
        Check if the union tag is ``file_preview``.

        :rtype: bool
        """
        return self._tag == 'file_preview'

    def is_file_rename(self):
        """
        Check if the union tag is ``file_rename``.

        :rtype: bool
        """
        return self._tag == 'file_rename'

    def is_file_restore(self):
        """
        Check if the union tag is ``file_restore``.

        :rtype: bool
        """
        return self._tag == 'file_restore'

    def is_file_revert(self):
        """
        Check if the union tag is ``file_revert``.

        :rtype: bool
        """
        return self._tag == 'file_revert'

    def is_file_rollback_changes(self):
        """
        Check if the union tag is ``file_rollback_changes``.

        :rtype: bool
        """
        return self._tag == 'file_rollback_changes'

    def is_file_save_copy_reference(self):
        """
        Check if the union tag is ``file_save_copy_reference``.

        :rtype: bool
        """
        return self._tag == 'file_save_copy_reference'

    def is_folder_overview_description_changed(self):
        """
        Check if the union tag is ``folder_overview_description_changed``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_description_changed'

    def is_folder_overview_item_pinned(self):
        """
        Check if the union tag is ``folder_overview_item_pinned``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_item_pinned'

    def is_folder_overview_item_unpinned(self):
        """
        Check if the union tag is ``folder_overview_item_unpinned``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_item_unpinned'

    def is_object_label_added(self):
        """
        Check if the union tag is ``object_label_added``.

        :rtype: bool
        """
        return self._tag == 'object_label_added'

    def is_object_label_removed(self):
        """
        Check if the union tag is ``object_label_removed``.

        :rtype: bool
        """
        return self._tag == 'object_label_removed'

    def is_object_label_updated_value(self):
        """
        Check if the union tag is ``object_label_updated_value``.

        :rtype: bool
        """
        return self._tag == 'object_label_updated_value'

    def is_organize_folder_with_tidy(self):
        """
        Check if the union tag is ``organize_folder_with_tidy``.

        :rtype: bool
        """
        return self._tag == 'organize_folder_with_tidy'

    def is_rewind_folder(self):
        """
        Check if the union tag is ``rewind_folder``.

        :rtype: bool
        """
        return self._tag == 'rewind_folder'

    def is_undo_naming_convention(self):
        """
        Check if the union tag is ``undo_naming_convention``.

        :rtype: bool
        """
        return self._tag == 'undo_naming_convention'

    def is_undo_organize_folder_with_tidy(self):
        """
        Check if the union tag is ``undo_organize_folder_with_tidy``.

        :rtype: bool
        """
        return self._tag == 'undo_organize_folder_with_tidy'

    def is_user_tags_added(self):
        """
        Check if the union tag is ``user_tags_added``.

        :rtype: bool
        """
        return self._tag == 'user_tags_added'

    def is_user_tags_removed(self):
        """
        Check if the union tag is ``user_tags_removed``.

        :rtype: bool
        """
        return self._tag == 'user_tags_removed'

    def is_email_ingest_receive_file(self):
        """
        Check if the union tag is ``email_ingest_receive_file``.

        :rtype: bool
        """
        return self._tag == 'email_ingest_receive_file'

    def is_file_request_change(self):
        """
        Check if the union tag is ``file_request_change``.

        :rtype: bool
        """
        return self._tag == 'file_request_change'

    def is_file_request_close(self):
        """
        Check if the union tag is ``file_request_close``.

        :rtype: bool
        """
        return self._tag == 'file_request_close'

    def is_file_request_create(self):
        """
        Check if the union tag is ``file_request_create``.

        :rtype: bool
        """
        return self._tag == 'file_request_create'

    def is_file_request_delete(self):
        """
        Check if the union tag is ``file_request_delete``.

        :rtype: bool
        """
        return self._tag == 'file_request_delete'

    def is_file_request_receive_file(self):
        """
        Check if the union tag is ``file_request_receive_file``.

        :rtype: bool
        """
        return self._tag == 'file_request_receive_file'

    def is_group_add_external_id(self):
        """
        Check if the union tag is ``group_add_external_id``.

        :rtype: bool
        """
        return self._tag == 'group_add_external_id'

    def is_group_add_member(self):
        """
        Check if the union tag is ``group_add_member``.

        :rtype: bool
        """
        return self._tag == 'group_add_member'

    def is_group_change_external_id(self):
        """
        Check if the union tag is ``group_change_external_id``.

        :rtype: bool
        """
        return self._tag == 'group_change_external_id'

    def is_group_change_management_type(self):
        """
        Check if the union tag is ``group_change_management_type``.

        :rtype: bool
        """
        return self._tag == 'group_change_management_type'

    def is_group_change_member_role(self):
        """
        Check if the union tag is ``group_change_member_role``.

        :rtype: bool
        """
        return self._tag == 'group_change_member_role'

    def is_group_create(self):
        """
        Check if the union tag is ``group_create``.

        :rtype: bool
        """
        return self._tag == 'group_create'

    def is_group_delete(self):
        """
        Check if the union tag is ``group_delete``.

        :rtype: bool
        """
        return self._tag == 'group_delete'

    def is_group_description_updated(self):
        """
        Check if the union tag is ``group_description_updated``.

        :rtype: bool
        """
        return self._tag == 'group_description_updated'

    def is_group_join_policy_updated(self):
        """
        Check if the union tag is ``group_join_policy_updated``.

        :rtype: bool
        """
        return self._tag == 'group_join_policy_updated'

    def is_group_moved(self):
        """
        Check if the union tag is ``group_moved``.

        :rtype: bool
        """
        return self._tag == 'group_moved'

    def is_group_remove_external_id(self):
        """
        Check if the union tag is ``group_remove_external_id``.

        :rtype: bool
        """
        return self._tag == 'group_remove_external_id'

    def is_group_remove_member(self):
        """
        Check if the union tag is ``group_remove_member``.

        :rtype: bool
        """
        return self._tag == 'group_remove_member'

    def is_group_rename(self):
        """
        Check if the union tag is ``group_rename``.

        :rtype: bool
        """
        return self._tag == 'group_rename'

    def is_account_lock_or_unlocked(self):
        """
        Check if the union tag is ``account_lock_or_unlocked``.

        :rtype: bool
        """
        return self._tag == 'account_lock_or_unlocked'

    def is_emm_error(self):
        """
        Check if the union tag is ``emm_error``.

        :rtype: bool
        """
        return self._tag == 'emm_error'

    def is_guest_admin_signed_in_via_trusted_teams(self):
        """
        Check if the union tag is ``guest_admin_signed_in_via_trusted_teams``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_signed_in_via_trusted_teams'

    def is_guest_admin_signed_out_via_trusted_teams(self):
        """
        Check if the union tag is ``guest_admin_signed_out_via_trusted_teams``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_signed_out_via_trusted_teams'

    def is_login_fail(self):
        """
        Check if the union tag is ``login_fail``.

        :rtype: bool
        """
        return self._tag == 'login_fail'

    def is_login_success(self):
        """
        Check if the union tag is ``login_success``.

        :rtype: bool
        """
        return self._tag == 'login_success'

    def is_logout(self):
        """
        Check if the union tag is ``logout``.

        :rtype: bool
        """
        return self._tag == 'logout'

    def is_reseller_support_session_end(self):
        """
        Check if the union tag is ``reseller_support_session_end``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_session_end'

    def is_reseller_support_session_start(self):
        """
        Check if the union tag is ``reseller_support_session_start``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_session_start'

    def is_sign_in_as_session_end(self):
        """
        Check if the union tag is ``sign_in_as_session_end``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as_session_end'

    def is_sign_in_as_session_start(self):
        """
        Check if the union tag is ``sign_in_as_session_start``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as_session_start'

    def is_sso_error(self):
        """
        Check if the union tag is ``sso_error``.

        :rtype: bool
        """
        return self._tag == 'sso_error'

    def is_create_team_invite_link(self):
        """
        Check if the union tag is ``create_team_invite_link``.

        :rtype: bool
        """
        return self._tag == 'create_team_invite_link'

    def is_delete_team_invite_link(self):
        """
        Check if the union tag is ``delete_team_invite_link``.

        :rtype: bool
        """
        return self._tag == 'delete_team_invite_link'

    def is_member_add_external_id(self):
        """
        Check if the union tag is ``member_add_external_id``.

        :rtype: bool
        """
        return self._tag == 'member_add_external_id'

    def is_member_add_name(self):
        """
        Check if the union tag is ``member_add_name``.

        :rtype: bool
        """
        return self._tag == 'member_add_name'

    def is_member_change_admin_role(self):
        """
        Check if the union tag is ``member_change_admin_role``.

        :rtype: bool
        """
        return self._tag == 'member_change_admin_role'

    def is_member_change_email(self):
        """
        Check if the union tag is ``member_change_email``.

        :rtype: bool
        """
        return self._tag == 'member_change_email'

    def is_member_change_external_id(self):
        """
        Check if the union tag is ``member_change_external_id``.

        :rtype: bool
        """
        return self._tag == 'member_change_external_id'

    def is_member_change_membership_type(self):
        """
        Check if the union tag is ``member_change_membership_type``.

        :rtype: bool
        """
        return self._tag == 'member_change_membership_type'

    def is_member_change_name(self):
        """
        Check if the union tag is ``member_change_name``.

        :rtype: bool
        """
        return self._tag == 'member_change_name'

    def is_member_change_reseller_role(self):
        """
        Check if the union tag is ``member_change_reseller_role``.

        :rtype: bool
        """
        return self._tag == 'member_change_reseller_role'

    def is_member_change_status(self):
        """
        Check if the union tag is ``member_change_status``.

        :rtype: bool
        """
        return self._tag == 'member_change_status'

    def is_member_delete_manual_contacts(self):
        """
        Check if the union tag is ``member_delete_manual_contacts``.

        :rtype: bool
        """
        return self._tag == 'member_delete_manual_contacts'

    def is_member_delete_profile_photo(self):
        """
        Check if the union tag is ``member_delete_profile_photo``.

        :rtype: bool
        """
        return self._tag == 'member_delete_profile_photo'

    def is_member_permanently_delete_account_contents(self):
        """
        Check if the union tag is ``member_permanently_delete_account_contents``.

        :rtype: bool
        """
        return self._tag == 'member_permanently_delete_account_contents'

    def is_member_remove_external_id(self):
        """
        Check if the union tag is ``member_remove_external_id``.

        :rtype: bool
        """
        return self._tag == 'member_remove_external_id'

    def is_member_set_profile_photo(self):
        """
        Check if the union tag is ``member_set_profile_photo``.

        :rtype: bool
        """
        return self._tag == 'member_set_profile_photo'

    def is_member_space_limits_add_custom_quota(self):
        """
        Check if the union tag is ``member_space_limits_add_custom_quota``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_add_custom_quota'

    def is_member_space_limits_change_custom_quota(self):
        """
        Check if the union tag is ``member_space_limits_change_custom_quota``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_custom_quota'

    def is_member_space_limits_change_status(self):
        """
        Check if the union tag is ``member_space_limits_change_status``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_status'

    def is_member_space_limits_remove_custom_quota(self):
        """
        Check if the union tag is ``member_space_limits_remove_custom_quota``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_remove_custom_quota'

    def is_member_suggest(self):
        """
        Check if the union tag is ``member_suggest``.

        :rtype: bool
        """
        return self._tag == 'member_suggest'

    def is_member_transfer_account_contents(self):
        """
        Check if the union tag is ``member_transfer_account_contents``.

        :rtype: bool
        """
        return self._tag == 'member_transfer_account_contents'

    def is_pending_secondary_email_added(self):
        """
        Check if the union tag is ``pending_secondary_email_added``.

        :rtype: bool
        """
        return self._tag == 'pending_secondary_email_added'

    def is_secondary_email_deleted(self):
        """
        Check if the union tag is ``secondary_email_deleted``.

        :rtype: bool
        """
        return self._tag == 'secondary_email_deleted'

    def is_secondary_email_verified(self):
        """
        Check if the union tag is ``secondary_email_verified``.

        :rtype: bool
        """
        return self._tag == 'secondary_email_verified'

    def is_secondary_mails_policy_changed(self):
        """
        Check if the union tag is ``secondary_mails_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'secondary_mails_policy_changed'

    def is_binder_add_page(self):
        """
        Check if the union tag is ``binder_add_page``.

        :rtype: bool
        """
        return self._tag == 'binder_add_page'

    def is_binder_add_section(self):
        """
        Check if the union tag is ``binder_add_section``.

        :rtype: bool
        """
        return self._tag == 'binder_add_section'

    def is_binder_remove_page(self):
        """
        Check if the union tag is ``binder_remove_page``.

        :rtype: bool
        """
        return self._tag == 'binder_remove_page'

    def is_binder_remove_section(self):
        """
        Check if the union tag is ``binder_remove_section``.

        :rtype: bool
        """
        return self._tag == 'binder_remove_section'

    def is_binder_rename_page(self):
        """
        Check if the union tag is ``binder_rename_page``.

        :rtype: bool
        """
        return self._tag == 'binder_rename_page'

    def is_binder_rename_section(self):
        """
        Check if the union tag is ``binder_rename_section``.

        :rtype: bool
        """
        return self._tag == 'binder_rename_section'

    def is_binder_reorder_page(self):
        """
        Check if the union tag is ``binder_reorder_page``.

        :rtype: bool
        """
        return self._tag == 'binder_reorder_page'

    def is_binder_reorder_section(self):
        """
        Check if the union tag is ``binder_reorder_section``.

        :rtype: bool
        """
        return self._tag == 'binder_reorder_section'

    def is_paper_content_add_member(self):
        """
        Check if the union tag is ``paper_content_add_member``.

        :rtype: bool
        """
        return self._tag == 'paper_content_add_member'

    def is_paper_content_add_to_folder(self):
        """
        Check if the union tag is ``paper_content_add_to_folder``.

        :rtype: bool
        """
        return self._tag == 'paper_content_add_to_folder'

    def is_paper_content_archive(self):
        """
        Check if the union tag is ``paper_content_archive``.

        :rtype: bool
        """
        return self._tag == 'paper_content_archive'

    def is_paper_content_create(self):
        """
        Check if the union tag is ``paper_content_create``.

        :rtype: bool
        """
        return self._tag == 'paper_content_create'

    def is_paper_content_permanently_delete(self):
        """
        Check if the union tag is ``paper_content_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'paper_content_permanently_delete'

    def is_paper_content_remove_from_folder(self):
        """
        Check if the union tag is ``paper_content_remove_from_folder``.

        :rtype: bool
        """
        return self._tag == 'paper_content_remove_from_folder'

    def is_paper_content_remove_member(self):
        """
        Check if the union tag is ``paper_content_remove_member``.

        :rtype: bool
        """
        return self._tag == 'paper_content_remove_member'

    def is_paper_content_rename(self):
        """
        Check if the union tag is ``paper_content_rename``.

        :rtype: bool
        """
        return self._tag == 'paper_content_rename'

    def is_paper_content_restore(self):
        """
        Check if the union tag is ``paper_content_restore``.

        :rtype: bool
        """
        return self._tag == 'paper_content_restore'

    def is_paper_doc_add_comment(self):
        """
        Check if the union tag is ``paper_doc_add_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_add_comment'

    def is_paper_doc_change_member_role(self):
        """
        Check if the union tag is ``paper_doc_change_member_role``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_member_role'

    def is_paper_doc_change_sharing_policy(self):
        """
        Check if the union tag is ``paper_doc_change_sharing_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_sharing_policy'

    def is_paper_doc_change_subscription(self):
        """
        Check if the union tag is ``paper_doc_change_subscription``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_subscription'

    def is_paper_doc_deleted(self):
        """
        Check if the union tag is ``paper_doc_deleted``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_deleted'

    def is_paper_doc_delete_comment(self):
        """
        Check if the union tag is ``paper_doc_delete_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_delete_comment'

    def is_paper_doc_download(self):
        """
        Check if the union tag is ``paper_doc_download``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_download'

    def is_paper_doc_edit(self):
        """
        Check if the union tag is ``paper_doc_edit``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_edit'

    def is_paper_doc_edit_comment(self):
        """
        Check if the union tag is ``paper_doc_edit_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_edit_comment'

    def is_paper_doc_followed(self):
        """
        Check if the union tag is ``paper_doc_followed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_followed'

    def is_paper_doc_mention(self):
        """
        Check if the union tag is ``paper_doc_mention``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_mention'

    def is_paper_doc_ownership_changed(self):
        """
        Check if the union tag is ``paper_doc_ownership_changed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_ownership_changed'

    def is_paper_doc_request_access(self):
        """
        Check if the union tag is ``paper_doc_request_access``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_request_access'

    def is_paper_doc_resolve_comment(self):
        """
        Check if the union tag is ``paper_doc_resolve_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_resolve_comment'

    def is_paper_doc_revert(self):
        """
        Check if the union tag is ``paper_doc_revert``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_revert'

    def is_paper_doc_slack_share(self):
        """
        Check if the union tag is ``paper_doc_slack_share``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_slack_share'

    def is_paper_doc_team_invite(self):
        """
        Check if the union tag is ``paper_doc_team_invite``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_team_invite'

    def is_paper_doc_trashed(self):
        """
        Check if the union tag is ``paper_doc_trashed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_trashed'

    def is_paper_doc_unresolve_comment(self):
        """
        Check if the union tag is ``paper_doc_unresolve_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_unresolve_comment'

    def is_paper_doc_untrashed(self):
        """
        Check if the union tag is ``paper_doc_untrashed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_untrashed'

    def is_paper_doc_view(self):
        """
        Check if the union tag is ``paper_doc_view``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_view'

    def is_paper_external_view_allow(self):
        """
        Check if the union tag is ``paper_external_view_allow``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_allow'

    def is_paper_external_view_default_team(self):
        """
        Check if the union tag is ``paper_external_view_default_team``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_default_team'

    def is_paper_external_view_forbid(self):
        """
        Check if the union tag is ``paper_external_view_forbid``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_forbid'

    def is_paper_folder_change_subscription(self):
        """
        Check if the union tag is ``paper_folder_change_subscription``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_change_subscription'

    def is_paper_folder_deleted(self):
        """
        Check if the union tag is ``paper_folder_deleted``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_deleted'

    def is_paper_folder_followed(self):
        """
        Check if the union tag is ``paper_folder_followed``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_followed'

    def is_paper_folder_team_invite(self):
        """
        Check if the union tag is ``paper_folder_team_invite``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_team_invite'

    def is_paper_published_link_change_permission(self):
        """
        Check if the union tag is ``paper_published_link_change_permission``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_change_permission'

    def is_paper_published_link_create(self):
        """
        Check if the union tag is ``paper_published_link_create``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_create'

    def is_paper_published_link_disabled(self):
        """
        Check if the union tag is ``paper_published_link_disabled``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_disabled'

    def is_paper_published_link_view(self):
        """
        Check if the union tag is ``paper_published_link_view``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_view'

    def is_password_change(self):
        """
        Check if the union tag is ``password_change``.

        :rtype: bool
        """
        return self._tag == 'password_change'

    def is_password_reset(self):
        """
        Check if the union tag is ``password_reset``.

        :rtype: bool
        """
        return self._tag == 'password_reset'

    def is_password_reset_all(self):
        """
        Check if the union tag is ``password_reset_all``.

        :rtype: bool
        """
        return self._tag == 'password_reset_all'

    def is_classification_create_report(self):
        """
        Check if the union tag is ``classification_create_report``.

        :rtype: bool
        """
        return self._tag == 'classification_create_report'

    def is_classification_create_report_fail(self):
        """
        Check if the union tag is ``classification_create_report_fail``.

        :rtype: bool
        """
        return self._tag == 'classification_create_report_fail'

    def is_emm_create_exceptions_report(self):
        """
        Check if the union tag is ``emm_create_exceptions_report``.

        :rtype: bool
        """
        return self._tag == 'emm_create_exceptions_report'

    def is_emm_create_usage_report(self):
        """
        Check if the union tag is ``emm_create_usage_report``.

        :rtype: bool
        """
        return self._tag == 'emm_create_usage_report'

    def is_export_members_report(self):
        """
        Check if the union tag is ``export_members_report``.

        :rtype: bool
        """
        return self._tag == 'export_members_report'

    def is_export_members_report_fail(self):
        """
        Check if the union tag is ``export_members_report_fail``.

        :rtype: bool
        """
        return self._tag == 'export_members_report_fail'

    def is_external_sharing_create_report(self):
        """
        Check if the union tag is ``external_sharing_create_report``.

        :rtype: bool
        """
        return self._tag == 'external_sharing_create_report'

    def is_external_sharing_report_failed(self):
        """
        Check if the union tag is ``external_sharing_report_failed``.

        :rtype: bool
        """
        return self._tag == 'external_sharing_report_failed'

    def is_no_expiration_link_gen_create_report(self):
        """
        Check if the union tag is ``no_expiration_link_gen_create_report``.

        :rtype: bool
        """
        return self._tag == 'no_expiration_link_gen_create_report'

    def is_no_expiration_link_gen_report_failed(self):
        """
        Check if the union tag is ``no_expiration_link_gen_report_failed``.

        :rtype: bool
        """
        return self._tag == 'no_expiration_link_gen_report_failed'

    def is_no_password_link_gen_create_report(self):
        """
        Check if the union tag is ``no_password_link_gen_create_report``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_gen_create_report'

    def is_no_password_link_gen_report_failed(self):
        """
        Check if the union tag is ``no_password_link_gen_report_failed``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_gen_report_failed'

    def is_no_password_link_view_create_report(self):
        """
        Check if the union tag is ``no_password_link_view_create_report``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_view_create_report'

    def is_no_password_link_view_report_failed(self):
        """
        Check if the union tag is ``no_password_link_view_report_failed``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_view_report_failed'

    def is_outdated_link_view_create_report(self):
        """
        Check if the union tag is ``outdated_link_view_create_report``.

        :rtype: bool
        """
        return self._tag == 'outdated_link_view_create_report'

    def is_outdated_link_view_report_failed(self):
        """
        Check if the union tag is ``outdated_link_view_report_failed``.

        :rtype: bool
        """
        return self._tag == 'outdated_link_view_report_failed'

    def is_paper_admin_export_start(self):
        """
        Check if the union tag is ``paper_admin_export_start``.

        :rtype: bool
        """
        return self._tag == 'paper_admin_export_start'

    def is_smart_sync_create_admin_privilege_report(self):
        """
        Check if the union tag is ``smart_sync_create_admin_privilege_report``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_create_admin_privilege_report'

    def is_team_activity_create_report(self):
        """
        Check if the union tag is ``team_activity_create_report``.

        :rtype: bool
        """
        return self._tag == 'team_activity_create_report'

    def is_team_activity_create_report_fail(self):
        """
        Check if the union tag is ``team_activity_create_report_fail``.

        :rtype: bool
        """
        return self._tag == 'team_activity_create_report_fail'

    def is_collection_share(self):
        """
        Check if the union tag is ``collection_share``.

        :rtype: bool
        """
        return self._tag == 'collection_share'

    def is_file_transfers_file_add(self):
        """
        Check if the union tag is ``file_transfers_file_add``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_file_add'

    def is_file_transfers_transfer_delete(self):
        """
        Check if the union tag is ``file_transfers_transfer_delete``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_delete'

    def is_file_transfers_transfer_download(self):
        """
        Check if the union tag is ``file_transfers_transfer_download``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_download'

    def is_file_transfers_transfer_send(self):
        """
        Check if the union tag is ``file_transfers_transfer_send``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_send'

    def is_file_transfers_transfer_view(self):
        """
        Check if the union tag is ``file_transfers_transfer_view``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_view'

    def is_note_acl_invite_only(self):
        """
        Check if the union tag is ``note_acl_invite_only``.

        :rtype: bool
        """
        return self._tag == 'note_acl_invite_only'

    def is_note_acl_link(self):
        """
        Check if the union tag is ``note_acl_link``.

        :rtype: bool
        """
        return self._tag == 'note_acl_link'

    def is_note_acl_team_link(self):
        """
        Check if the union tag is ``note_acl_team_link``.

        :rtype: bool
        """
        return self._tag == 'note_acl_team_link'

    def is_note_shared(self):
        """
        Check if the union tag is ``note_shared``.

        :rtype: bool
        """
        return self._tag == 'note_shared'

    def is_note_share_receive(self):
        """
        Check if the union tag is ``note_share_receive``.

        :rtype: bool
        """
        return self._tag == 'note_share_receive'

    def is_open_note_shared(self):
        """
        Check if the union tag is ``open_note_shared``.

        :rtype: bool
        """
        return self._tag == 'open_note_shared'

    def is_sf_add_group(self):
        """
        Check if the union tag is ``sf_add_group``.

        :rtype: bool
        """
        return self._tag == 'sf_add_group'

    def is_sf_allow_non_members_to_view_shared_links(self):
        """
        Check if the union tag is ``sf_allow_non_members_to_view_shared_links``.

        :rtype: bool
        """
        return self._tag == 'sf_allow_non_members_to_view_shared_links'

    def is_sf_external_invite_warn(self):
        """
        Check if the union tag is ``sf_external_invite_warn``.

        :rtype: bool
        """
        return self._tag == 'sf_external_invite_warn'

    def is_sf_fb_invite(self):
        """
        Check if the union tag is ``sf_fb_invite``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_invite'

    def is_sf_fb_invite_change_role(self):
        """
        Check if the union tag is ``sf_fb_invite_change_role``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_invite_change_role'

    def is_sf_fb_uninvite(self):
        """
        Check if the union tag is ``sf_fb_uninvite``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_uninvite'

    def is_sf_invite_group(self):
        """
        Check if the union tag is ``sf_invite_group``.

        :rtype: bool
        """
        return self._tag == 'sf_invite_group'

    def is_sf_team_grant_access(self):
        """
        Check if the union tag is ``sf_team_grant_access``.

        :rtype: bool
        """
        return self._tag == 'sf_team_grant_access'

    def is_sf_team_invite(self):
        """
        Check if the union tag is ``sf_team_invite``.

        :rtype: bool
        """
        return self._tag == 'sf_team_invite'

    def is_sf_team_invite_change_role(self):
        """
        Check if the union tag is ``sf_team_invite_change_role``.

        :rtype: bool
        """
        return self._tag == 'sf_team_invite_change_role'

    def is_sf_team_join(self):
        """
        Check if the union tag is ``sf_team_join``.

        :rtype: bool
        """
        return self._tag == 'sf_team_join'

    def is_sf_team_join_from_oob_link(self):
        """
        Check if the union tag is ``sf_team_join_from_oob_link``.

        :rtype: bool
        """
        return self._tag == 'sf_team_join_from_oob_link'

    def is_sf_team_uninvite(self):
        """
        Check if the union tag is ``sf_team_uninvite``.

        :rtype: bool
        """
        return self._tag == 'sf_team_uninvite'

    def is_shared_content_add_invitees(self):
        """
        Check if the union tag is ``shared_content_add_invitees``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_invitees'

    def is_shared_content_add_link_expiry(self):
        """
        Check if the union tag is ``shared_content_add_link_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_link_expiry'

    def is_shared_content_add_link_password(self):
        """
        Check if the union tag is ``shared_content_add_link_password``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_link_password'

    def is_shared_content_add_member(self):
        """
        Check if the union tag is ``shared_content_add_member``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_member'

    def is_shared_content_change_downloads_policy(self):
        """
        Check if the union tag is ``shared_content_change_downloads_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_downloads_policy'

    def is_shared_content_change_invitee_role(self):
        """
        Check if the union tag is ``shared_content_change_invitee_role``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_invitee_role'

    def is_shared_content_change_link_audience(self):
        """
        Check if the union tag is ``shared_content_change_link_audience``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_audience'

    def is_shared_content_change_link_expiry(self):
        """
        Check if the union tag is ``shared_content_change_link_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_expiry'

    def is_shared_content_change_link_password(self):
        """
        Check if the union tag is ``shared_content_change_link_password``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_password'

    def is_shared_content_change_member_role(self):
        """
        Check if the union tag is ``shared_content_change_member_role``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_member_role'

    def is_shared_content_change_viewer_info_policy(self):
        """
        Check if the union tag is ``shared_content_change_viewer_info_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_viewer_info_policy'

    def is_shared_content_claim_invitation(self):
        """
        Check if the union tag is ``shared_content_claim_invitation``.

        :rtype: bool
        """
        return self._tag == 'shared_content_claim_invitation'

    def is_shared_content_copy(self):
        """
        Check if the union tag is ``shared_content_copy``.

        :rtype: bool
        """
        return self._tag == 'shared_content_copy'

    def is_shared_content_download(self):
        """
        Check if the union tag is ``shared_content_download``.

        :rtype: bool
        """
        return self._tag == 'shared_content_download'

    def is_shared_content_relinquish_membership(self):
        """
        Check if the union tag is ``shared_content_relinquish_membership``.

        :rtype: bool
        """
        return self._tag == 'shared_content_relinquish_membership'

    def is_shared_content_remove_invitees(self):
        """
        Check if the union tag is ``shared_content_remove_invitees``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_invitees'

    def is_shared_content_remove_link_expiry(self):
        """
        Check if the union tag is ``shared_content_remove_link_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_link_expiry'

    def is_shared_content_remove_link_password(self):
        """
        Check if the union tag is ``shared_content_remove_link_password``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_link_password'

    def is_shared_content_remove_member(self):
        """
        Check if the union tag is ``shared_content_remove_member``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_member'

    def is_shared_content_request_access(self):
        """
        Check if the union tag is ``shared_content_request_access``.

        :rtype: bool
        """
        return self._tag == 'shared_content_request_access'

    def is_shared_content_restore_invitees(self):
        """
        Check if the union tag is ``shared_content_restore_invitees``.

        :rtype: bool
        """
        return self._tag == 'shared_content_restore_invitees'

    def is_shared_content_restore_member(self):
        """
        Check if the union tag is ``shared_content_restore_member``.

        :rtype: bool
        """
        return self._tag == 'shared_content_restore_member'

    def is_shared_content_unshare(self):
        """
        Check if the union tag is ``shared_content_unshare``.

        :rtype: bool
        """
        return self._tag == 'shared_content_unshare'

    def is_shared_content_view(self):
        """
        Check if the union tag is ``shared_content_view``.

        :rtype: bool
        """
        return self._tag == 'shared_content_view'

    def is_shared_folder_change_link_policy(self):
        """
        Check if the union tag is ``shared_folder_change_link_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_link_policy'

    def is_shared_folder_change_members_inheritance_policy(self):
        """
        Check if the union tag is ``shared_folder_change_members_inheritance_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_inheritance_policy'

    def is_shared_folder_change_members_management_policy(self):
        """
        Check if the union tag is ``shared_folder_change_members_management_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_management_policy'

    def is_shared_folder_change_members_policy(self):
        """
        Check if the union tag is ``shared_folder_change_members_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_policy'

    def is_shared_folder_create(self):
        """
        Check if the union tag is ``shared_folder_create``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_create'

    def is_shared_folder_decline_invitation(self):
        """
        Check if the union tag is ``shared_folder_decline_invitation``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_decline_invitation'

    def is_shared_folder_mount(self):
        """
        Check if the union tag is ``shared_folder_mount``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_mount'

    def is_shared_folder_nest(self):
        """
        Check if the union tag is ``shared_folder_nest``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_nest'

    def is_shared_folder_transfer_ownership(self):
        """
        Check if the union tag is ``shared_folder_transfer_ownership``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_transfer_ownership'

    def is_shared_folder_unmount(self):
        """
        Check if the union tag is ``shared_folder_unmount``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_unmount'

    def is_shared_link_add_expiry(self):
        """
        Check if the union tag is ``shared_link_add_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_link_add_expiry'

    def is_shared_link_change_expiry(self):
        """
        Check if the union tag is ``shared_link_change_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_link_change_expiry'

    def is_shared_link_change_visibility(self):
        """
        Check if the union tag is ``shared_link_change_visibility``.

        :rtype: bool
        """
        return self._tag == 'shared_link_change_visibility'

    def is_shared_link_copy(self):
        """
        Check if the union tag is ``shared_link_copy``.

        :rtype: bool
        """
        return self._tag == 'shared_link_copy'

    def is_shared_link_create(self):
        """
        Check if the union tag is ``shared_link_create``.

        :rtype: bool
        """
        return self._tag == 'shared_link_create'

    def is_shared_link_disable(self):
        """
        Check if the union tag is ``shared_link_disable``.

        :rtype: bool
        """
        return self._tag == 'shared_link_disable'

    def is_shared_link_download(self):
        """
        Check if the union tag is ``shared_link_download``.

        :rtype: bool
        """
        return self._tag == 'shared_link_download'

    def is_shared_link_remove_expiry(self):
        """
        Check if the union tag is ``shared_link_remove_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_link_remove_expiry'

    def is_shared_link_settings_add_expiration(self):
        """
        Check if the union tag is ``shared_link_settings_add_expiration``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_add_expiration'

    def is_shared_link_settings_add_password(self):
        """
        Check if the union tag is ``shared_link_settings_add_password``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_add_password'

    def is_shared_link_settings_allow_download_disabled(self):
        """
        Check if the union tag is ``shared_link_settings_allow_download_disabled``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_allow_download_disabled'

    def is_shared_link_settings_allow_download_enabled(self):
        """
        Check if the union tag is ``shared_link_settings_allow_download_enabled``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_allow_download_enabled'

    def is_shared_link_settings_change_audience(self):
        """
        Check if the union tag is ``shared_link_settings_change_audience``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_audience'

    def is_shared_link_settings_change_expiration(self):
        """
        Check if the union tag is ``shared_link_settings_change_expiration``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_expiration'

    def is_shared_link_settings_change_password(self):
        """
        Check if the union tag is ``shared_link_settings_change_password``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_password'

    def is_shared_link_settings_remove_expiration(self):
        """
        Check if the union tag is ``shared_link_settings_remove_expiration``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_remove_expiration'

    def is_shared_link_settings_remove_password(self):
        """
        Check if the union tag is ``shared_link_settings_remove_password``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_remove_password'

    def is_shared_link_share(self):
        """
        Check if the union tag is ``shared_link_share``.

        :rtype: bool
        """
        return self._tag == 'shared_link_share'

    def is_shared_link_view(self):
        """
        Check if the union tag is ``shared_link_view``.

        :rtype: bool
        """
        return self._tag == 'shared_link_view'

    def is_shared_note_opened(self):
        """
        Check if the union tag is ``shared_note_opened``.

        :rtype: bool
        """
        return self._tag == 'shared_note_opened'

    def is_shmodel_disable_downloads(self):
        """
        Check if the union tag is ``shmodel_disable_downloads``.

        :rtype: bool
        """
        return self._tag == 'shmodel_disable_downloads'

    def is_shmodel_enable_downloads(self):
        """
        Check if the union tag is ``shmodel_enable_downloads``.

        :rtype: bool
        """
        return self._tag == 'shmodel_enable_downloads'

    def is_shmodel_group_share(self):
        """
        Check if the union tag is ``shmodel_group_share``.

        :rtype: bool
        """
        return self._tag == 'shmodel_group_share'

    def is_showcase_access_granted(self):
        """
        Check if the union tag is ``showcase_access_granted``.

        :rtype: bool
        """
        return self._tag == 'showcase_access_granted'

    def is_showcase_add_member(self):
        """
        Check if the union tag is ``showcase_add_member``.

        :rtype: bool
        """
        return self._tag == 'showcase_add_member'

    def is_showcase_archived(self):
        """
        Check if the union tag is ``showcase_archived``.

        :rtype: bool
        """
        return self._tag == 'showcase_archived'

    def is_showcase_created(self):
        """
        Check if the union tag is ``showcase_created``.

        :rtype: bool
        """
        return self._tag == 'showcase_created'

    def is_showcase_delete_comment(self):
        """
        Check if the union tag is ``showcase_delete_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_delete_comment'

    def is_showcase_edited(self):
        """
        Check if the union tag is ``showcase_edited``.

        :rtype: bool
        """
        return self._tag == 'showcase_edited'

    def is_showcase_edit_comment(self):
        """
        Check if the union tag is ``showcase_edit_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_edit_comment'

    def is_showcase_file_added(self):
        """
        Check if the union tag is ``showcase_file_added``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_added'

    def is_showcase_file_download(self):
        """
        Check if the union tag is ``showcase_file_download``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_download'

    def is_showcase_file_removed(self):
        """
        Check if the union tag is ``showcase_file_removed``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_removed'

    def is_showcase_file_view(self):
        """
        Check if the union tag is ``showcase_file_view``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_view'

    def is_showcase_permanently_deleted(self):
        """
        Check if the union tag is ``showcase_permanently_deleted``.

        :rtype: bool
        """
        return self._tag == 'showcase_permanently_deleted'

    def is_showcase_post_comment(self):
        """
        Check if the union tag is ``showcase_post_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_post_comment'

    def is_showcase_remove_member(self):
        """
        Check if the union tag is ``showcase_remove_member``.

        :rtype: bool
        """
        return self._tag == 'showcase_remove_member'

    def is_showcase_renamed(self):
        """
        Check if the union tag is ``showcase_renamed``.

        :rtype: bool
        """
        return self._tag == 'showcase_renamed'

    def is_showcase_request_access(self):
        """
        Check if the union tag is ``showcase_request_access``.

        :rtype: bool
        """
        return self._tag == 'showcase_request_access'

    def is_showcase_resolve_comment(self):
        """
        Check if the union tag is ``showcase_resolve_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_resolve_comment'

    def is_showcase_restored(self):
        """
        Check if the union tag is ``showcase_restored``.

        :rtype: bool
        """
        return self._tag == 'showcase_restored'

    def is_showcase_trashed(self):
        """
        Check if the union tag is ``showcase_trashed``.

        :rtype: bool
        """
        return self._tag == 'showcase_trashed'

    def is_showcase_trashed_deprecated(self):
        """
        Check if the union tag is ``showcase_trashed_deprecated``.

        :rtype: bool
        """
        return self._tag == 'showcase_trashed_deprecated'

    def is_showcase_unresolve_comment(self):
        """
        Check if the union tag is ``showcase_unresolve_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_unresolve_comment'

    def is_showcase_untrashed(self):
        """
        Check if the union tag is ``showcase_untrashed``.

        :rtype: bool
        """
        return self._tag == 'showcase_untrashed'

    def is_showcase_untrashed_deprecated(self):
        """
        Check if the union tag is ``showcase_untrashed_deprecated``.

        :rtype: bool
        """
        return self._tag == 'showcase_untrashed_deprecated'

    def is_showcase_view(self):
        """
        Check if the union tag is ``showcase_view``.

        :rtype: bool
        """
        return self._tag == 'showcase_view'

    def is_sso_add_cert(self):
        """
        Check if the union tag is ``sso_add_cert``.

        :rtype: bool
        """
        return self._tag == 'sso_add_cert'

    def is_sso_add_login_url(self):
        """
        Check if the union tag is ``sso_add_login_url``.

        :rtype: bool
        """
        return self._tag == 'sso_add_login_url'

    def is_sso_add_logout_url(self):
        """
        Check if the union tag is ``sso_add_logout_url``.

        :rtype: bool
        """
        return self._tag == 'sso_add_logout_url'

    def is_sso_change_cert(self):
        """
        Check if the union tag is ``sso_change_cert``.

        :rtype: bool
        """
        return self._tag == 'sso_change_cert'

    def is_sso_change_login_url(self):
        """
        Check if the union tag is ``sso_change_login_url``.

        :rtype: bool
        """
        return self._tag == 'sso_change_login_url'

    def is_sso_change_logout_url(self):
        """
        Check if the union tag is ``sso_change_logout_url``.

        :rtype: bool
        """
        return self._tag == 'sso_change_logout_url'

    def is_sso_change_saml_identity_mode(self):
        """
        Check if the union tag is ``sso_change_saml_identity_mode``.

        :rtype: bool
        """
        return self._tag == 'sso_change_saml_identity_mode'

    def is_sso_remove_cert(self):
        """
        Check if the union tag is ``sso_remove_cert``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_cert'

    def is_sso_remove_login_url(self):
        """
        Check if the union tag is ``sso_remove_login_url``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_login_url'

    def is_sso_remove_logout_url(self):
        """
        Check if the union tag is ``sso_remove_logout_url``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_logout_url'

    def is_team_folder_change_status(self):
        """
        Check if the union tag is ``team_folder_change_status``.

        :rtype: bool
        """
        return self._tag == 'team_folder_change_status'

    def is_team_folder_create(self):
        """
        Check if the union tag is ``team_folder_create``.

        :rtype: bool
        """
        return self._tag == 'team_folder_create'

    def is_team_folder_downgrade(self):
        """
        Check if the union tag is ``team_folder_downgrade``.

        :rtype: bool
        """
        return self._tag == 'team_folder_downgrade'

    def is_team_folder_permanently_delete(self):
        """
        Check if the union tag is ``team_folder_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'team_folder_permanently_delete'

    def is_team_folder_rename(self):
        """
        Check if the union tag is ``team_folder_rename``.

        :rtype: bool
        """
        return self._tag == 'team_folder_rename'

    def is_team_selective_sync_settings_changed(self):
        """
        Check if the union tag is ``team_selective_sync_settings_changed``.

        :rtype: bool
        """
        return self._tag == 'team_selective_sync_settings_changed'

    def is_account_capture_change_policy(self):
        """
        Check if the union tag is ``account_capture_change_policy``.

        :rtype: bool
        """
        return self._tag == 'account_capture_change_policy'

    def is_admin_email_reminders_changed(self):
        """
        Check if the union tag is ``admin_email_reminders_changed``.

        :rtype: bool
        """
        return self._tag == 'admin_email_reminders_changed'

    def is_allow_download_disabled(self):
        """
        Check if the union tag is ``allow_download_disabled``.

        :rtype: bool
        """
        return self._tag == 'allow_download_disabled'

    def is_allow_download_enabled(self):
        """
        Check if the union tag is ``allow_download_enabled``.

        :rtype: bool
        """
        return self._tag == 'allow_download_enabled'

    def is_app_permissions_changed(self):
        """
        Check if the union tag is ``app_permissions_changed``.

        :rtype: bool
        """
        return self._tag == 'app_permissions_changed'

    def is_camera_uploads_policy_changed(self):
        """
        Check if the union tag is ``camera_uploads_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'camera_uploads_policy_changed'

    def is_capture_transcript_policy_changed(self):
        """
        Check if the union tag is ``capture_transcript_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'capture_transcript_policy_changed'

    def is_classification_change_policy(self):
        """
        Check if the union tag is ``classification_change_policy``.

        :rtype: bool
        """
        return self._tag == 'classification_change_policy'

    def is_computer_backup_policy_changed(self):
        """
        Check if the union tag is ``computer_backup_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'computer_backup_policy_changed'

    def is_content_administration_policy_changed(self):
        """
        Check if the union tag is ``content_administration_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'content_administration_policy_changed'

    def is_data_placement_restriction_change_policy(self):
        """
        Check if the union tag is ``data_placement_restriction_change_policy``.

        :rtype: bool
        """
        return self._tag == 'data_placement_restriction_change_policy'

    def is_data_placement_restriction_satisfy_policy(self):
        """
        Check if the union tag is ``data_placement_restriction_satisfy_policy``.

        :rtype: bool
        """
        return self._tag == 'data_placement_restriction_satisfy_policy'

    def is_device_approvals_add_exception(self):
        """
        Check if the union tag is ``device_approvals_add_exception``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_add_exception'

    def is_device_approvals_change_desktop_policy(self):
        """
        Check if the union tag is ``device_approvals_change_desktop_policy``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_desktop_policy'

    def is_device_approvals_change_mobile_policy(self):
        """
        Check if the union tag is ``device_approvals_change_mobile_policy``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_mobile_policy'

    def is_device_approvals_change_overage_action(self):
        """
        Check if the union tag is ``device_approvals_change_overage_action``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_overage_action'

    def is_device_approvals_change_unlink_action(self):
        """
        Check if the union tag is ``device_approvals_change_unlink_action``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_unlink_action'

    def is_device_approvals_remove_exception(self):
        """
        Check if the union tag is ``device_approvals_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_remove_exception'

    def is_directory_restrictions_add_members(self):
        """
        Check if the union tag is ``directory_restrictions_add_members``.

        :rtype: bool
        """
        return self._tag == 'directory_restrictions_add_members'

    def is_directory_restrictions_remove_members(self):
        """
        Check if the union tag is ``directory_restrictions_remove_members``.

        :rtype: bool
        """
        return self._tag == 'directory_restrictions_remove_members'

    def is_dropbox_passwords_policy_changed(self):
        """
        Check if the union tag is ``dropbox_passwords_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_policy_changed'

    def is_email_ingest_policy_changed(self):
        """
        Check if the union tag is ``email_ingest_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'email_ingest_policy_changed'

    def is_emm_add_exception(self):
        """
        Check if the union tag is ``emm_add_exception``.

        :rtype: bool
        """
        return self._tag == 'emm_add_exception'

    def is_emm_change_policy(self):
        """
        Check if the union tag is ``emm_change_policy``.

        :rtype: bool
        """
        return self._tag == 'emm_change_policy'

    def is_emm_remove_exception(self):
        """
        Check if the union tag is ``emm_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'emm_remove_exception'

    def is_extended_version_history_change_policy(self):
        """
        Check if the union tag is ``extended_version_history_change_policy``.

        :rtype: bool
        """
        return self._tag == 'extended_version_history_change_policy'

    def is_external_drive_backup_policy_changed(self):
        """
        Check if the union tag is ``external_drive_backup_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_policy_changed'

    def is_file_comments_change_policy(self):
        """
        Check if the union tag is ``file_comments_change_policy``.

        :rtype: bool
        """
        return self._tag == 'file_comments_change_policy'

    def is_file_locking_policy_changed(self):
        """
        Check if the union tag is ``file_locking_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'file_locking_policy_changed'

    def is_file_provider_migration_policy_changed(self):
        """
        Check if the union tag is ``file_provider_migration_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'file_provider_migration_policy_changed'

    def is_file_requests_change_policy(self):
        """
        Check if the union tag is ``file_requests_change_policy``.

        :rtype: bool
        """
        return self._tag == 'file_requests_change_policy'

    def is_file_requests_emails_enabled(self):
        """
        Check if the union tag is ``file_requests_emails_enabled``.

        :rtype: bool
        """
        return self._tag == 'file_requests_emails_enabled'

    def is_file_requests_emails_restricted_to_team_only(self):
        """
        Check if the union tag is ``file_requests_emails_restricted_to_team_only``.

        :rtype: bool
        """
        return self._tag == 'file_requests_emails_restricted_to_team_only'

    def is_file_transfers_policy_changed(self):
        """
        Check if the union tag is ``file_transfers_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_policy_changed'

    def is_folder_link_restriction_policy_changed(self):
        """
        Check if the union tag is ``folder_link_restriction_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'folder_link_restriction_policy_changed'

    def is_google_sso_change_policy(self):
        """
        Check if the union tag is ``google_sso_change_policy``.

        :rtype: bool
        """
        return self._tag == 'google_sso_change_policy'

    def is_group_user_management_change_policy(self):
        """
        Check if the union tag is ``group_user_management_change_policy``.

        :rtype: bool
        """
        return self._tag == 'group_user_management_change_policy'

    def is_integration_policy_changed(self):
        """
        Check if the union tag is ``integration_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'integration_policy_changed'

    def is_invite_acceptance_email_policy_changed(self):
        """
        Check if the union tag is ``invite_acceptance_email_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'invite_acceptance_email_policy_changed'

    def is_member_requests_change_policy(self):
        """
        Check if the union tag is ``member_requests_change_policy``.

        :rtype: bool
        """
        return self._tag == 'member_requests_change_policy'

    def is_member_send_invite_policy_changed(self):
        """
        Check if the union tag is ``member_send_invite_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'member_send_invite_policy_changed'

    def is_member_space_limits_add_exception(self):
        """
        Check if the union tag is ``member_space_limits_add_exception``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_add_exception'

    def is_member_space_limits_change_caps_type_policy(self):
        """
        Check if the union tag is ``member_space_limits_change_caps_type_policy``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_caps_type_policy'

    def is_member_space_limits_change_policy(self):
        """
        Check if the union tag is ``member_space_limits_change_policy``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_policy'

    def is_member_space_limits_remove_exception(self):
        """
        Check if the union tag is ``member_space_limits_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_remove_exception'

    def is_member_suggestions_change_policy(self):
        """
        Check if the union tag is ``member_suggestions_change_policy``.

        :rtype: bool
        """
        return self._tag == 'member_suggestions_change_policy'

    def is_microsoft_office_addin_change_policy(self):
        """
        Check if the union tag is ``microsoft_office_addin_change_policy``.

        :rtype: bool
        """
        return self._tag == 'microsoft_office_addin_change_policy'

    def is_network_control_change_policy(self):
        """
        Check if the union tag is ``network_control_change_policy``.

        :rtype: bool
        """
        return self._tag == 'network_control_change_policy'

    def is_paper_change_deployment_policy(self):
        """
        Check if the union tag is ``paper_change_deployment_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_deployment_policy'

    def is_paper_change_member_link_policy(self):
        """
        Check if the union tag is ``paper_change_member_link_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_member_link_policy'

    def is_paper_change_member_policy(self):
        """
        Check if the union tag is ``paper_change_member_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_member_policy'

    def is_paper_change_policy(self):
        """
        Check if the union tag is ``paper_change_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_policy'

    def is_paper_default_folder_policy_changed(self):
        """
        Check if the union tag is ``paper_default_folder_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'paper_default_folder_policy_changed'

    def is_paper_desktop_policy_changed(self):
        """
        Check if the union tag is ``paper_desktop_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'paper_desktop_policy_changed'

    def is_paper_enabled_users_group_addition(self):
        """
        Check if the union tag is ``paper_enabled_users_group_addition``.

        :rtype: bool
        """
        return self._tag == 'paper_enabled_users_group_addition'

    def is_paper_enabled_users_group_removal(self):
        """
        Check if the union tag is ``paper_enabled_users_group_removal``.

        :rtype: bool
        """
        return self._tag == 'paper_enabled_users_group_removal'

    def is_password_strength_requirements_change_policy(self):
        """
        Check if the union tag is ``password_strength_requirements_change_policy``.

        :rtype: bool
        """
        return self._tag == 'password_strength_requirements_change_policy'

    def is_permanent_delete_change_policy(self):
        """
        Check if the union tag is ``permanent_delete_change_policy``.

        :rtype: bool
        """
        return self._tag == 'permanent_delete_change_policy'

    def is_reseller_support_change_policy(self):
        """
        Check if the union tag is ``reseller_support_change_policy``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_change_policy'

    def is_rewind_policy_changed(self):
        """
        Check if the union tag is ``rewind_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'rewind_policy_changed'

    def is_send_for_signature_policy_changed(self):
        """
        Check if the union tag is ``send_for_signature_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'send_for_signature_policy_changed'

    def is_sharing_change_folder_join_policy(self):
        """
        Check if the union tag is ``sharing_change_folder_join_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_folder_join_policy'

    def is_sharing_change_link_allow_change_expiration_policy(self):
        """
        Check if the union tag is ``sharing_change_link_allow_change_expiration_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_allow_change_expiration_policy'

    def is_sharing_change_link_default_expiration_policy(self):
        """
        Check if the union tag is ``sharing_change_link_default_expiration_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_default_expiration_policy'

    def is_sharing_change_link_enforce_password_policy(self):
        """
        Check if the union tag is ``sharing_change_link_enforce_password_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_enforce_password_policy'

    def is_sharing_change_link_policy(self):
        """
        Check if the union tag is ``sharing_change_link_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_policy'

    def is_sharing_change_member_policy(self):
        """
        Check if the union tag is ``sharing_change_member_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_member_policy'

    def is_showcase_change_download_policy(self):
        """
        Check if the union tag is ``showcase_change_download_policy``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_download_policy'

    def is_showcase_change_enabled_policy(self):
        """
        Check if the union tag is ``showcase_change_enabled_policy``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_enabled_policy'

    def is_showcase_change_external_sharing_policy(self):
        """
        Check if the union tag is ``showcase_change_external_sharing_policy``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_external_sharing_policy'

    def is_smarter_smart_sync_policy_changed(self):
        """
        Check if the union tag is ``smarter_smart_sync_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'smarter_smart_sync_policy_changed'

    def is_smart_sync_change_policy(self):
        """
        Check if the union tag is ``smart_sync_change_policy``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_change_policy'

    def is_smart_sync_not_opt_out(self):
        """
        Check if the union tag is ``smart_sync_not_opt_out``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_not_opt_out'

    def is_smart_sync_opt_out(self):
        """
        Check if the union tag is ``smart_sync_opt_out``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_opt_out'

    def is_sso_change_policy(self):
        """
        Check if the union tag is ``sso_change_policy``.

        :rtype: bool
        """
        return self._tag == 'sso_change_policy'

    def is_team_branding_policy_changed(self):
        """
        Check if the union tag is ``team_branding_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'team_branding_policy_changed'

    def is_team_extensions_policy_changed(self):
        """
        Check if the union tag is ``team_extensions_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'team_extensions_policy_changed'

    def is_team_selective_sync_policy_changed(self):
        """
        Check if the union tag is ``team_selective_sync_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'team_selective_sync_policy_changed'

    def is_team_sharing_whitelist_subjects_changed(self):
        """
        Check if the union tag is ``team_sharing_whitelist_subjects_changed``.

        :rtype: bool
        """
        return self._tag == 'team_sharing_whitelist_subjects_changed'

    def is_tfa_add_exception(self):
        """
        Check if the union tag is ``tfa_add_exception``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_exception'

    def is_tfa_change_policy(self):
        """
        Check if the union tag is ``tfa_change_policy``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_policy'

    def is_tfa_remove_exception(self):
        """
        Check if the union tag is ``tfa_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_exception'

    def is_two_account_change_policy(self):
        """
        Check if the union tag is ``two_account_change_policy``.

        :rtype: bool
        """
        return self._tag == 'two_account_change_policy'

    def is_viewer_info_policy_changed(self):
        """
        Check if the union tag is ``viewer_info_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'viewer_info_policy_changed'

    def is_watermarking_policy_changed(self):
        """
        Check if the union tag is ``watermarking_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'watermarking_policy_changed'

    def is_web_sessions_change_active_session_limit(self):
        """
        Check if the union tag is ``web_sessions_change_active_session_limit``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_active_session_limit'

    def is_web_sessions_change_fixed_length_policy(self):
        """
        Check if the union tag is ``web_sessions_change_fixed_length_policy``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_fixed_length_policy'

    def is_web_sessions_change_idle_length_policy(self):
        """
        Check if the union tag is ``web_sessions_change_idle_length_policy``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_idle_length_policy'

    def is_data_residency_migration_request_successful(self):
        """
        Check if the union tag is ``data_residency_migration_request_successful``.

        :rtype: bool
        """
        return self._tag == 'data_residency_migration_request_successful'

    def is_data_residency_migration_request_unsuccessful(self):
        """
        Check if the union tag is ``data_residency_migration_request_unsuccessful``.

        :rtype: bool
        """
        return self._tag == 'data_residency_migration_request_unsuccessful'

    def is_team_merge_from(self):
        """
        Check if the union tag is ``team_merge_from``.

        :rtype: bool
        """
        return self._tag == 'team_merge_from'

    def is_team_merge_to(self):
        """
        Check if the union tag is ``team_merge_to``.

        :rtype: bool
        """
        return self._tag == 'team_merge_to'

    def is_team_profile_add_background(self):
        """
        Check if the union tag is ``team_profile_add_background``.

        :rtype: bool
        """
        return self._tag == 'team_profile_add_background'

    def is_team_profile_add_logo(self):
        """
        Check if the union tag is ``team_profile_add_logo``.

        :rtype: bool
        """
        return self._tag == 'team_profile_add_logo'

    def is_team_profile_change_background(self):
        """
        Check if the union tag is ``team_profile_change_background``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_background'

    def is_team_profile_change_default_language(self):
        """
        Check if the union tag is ``team_profile_change_default_language``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_default_language'

    def is_team_profile_change_logo(self):
        """
        Check if the union tag is ``team_profile_change_logo``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_logo'

    def is_team_profile_change_name(self):
        """
        Check if the union tag is ``team_profile_change_name``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_name'

    def is_team_profile_remove_background(self):
        """
        Check if the union tag is ``team_profile_remove_background``.

        :rtype: bool
        """
        return self._tag == 'team_profile_remove_background'

    def is_team_profile_remove_logo(self):
        """
        Check if the union tag is ``team_profile_remove_logo``.

        :rtype: bool
        """
        return self._tag == 'team_profile_remove_logo'

    def is_tfa_add_backup_phone(self):
        """
        Check if the union tag is ``tfa_add_backup_phone``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_backup_phone'

    def is_tfa_add_security_key(self):
        """
        Check if the union tag is ``tfa_add_security_key``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_security_key'

    def is_tfa_change_backup_phone(self):
        """
        Check if the union tag is ``tfa_change_backup_phone``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_backup_phone'

    def is_tfa_change_status(self):
        """
        Check if the union tag is ``tfa_change_status``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_status'

    def is_tfa_remove_backup_phone(self):
        """
        Check if the union tag is ``tfa_remove_backup_phone``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_backup_phone'

    def is_tfa_remove_security_key(self):
        """
        Check if the union tag is ``tfa_remove_security_key``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_security_key'

    def is_tfa_reset(self):
        """
        Check if the union tag is ``tfa_reset``.

        :rtype: bool
        """
        return self._tag == 'tfa_reset'

    def is_changed_enterprise_admin_role(self):
        """
        Check if the union tag is ``changed_enterprise_admin_role``.

        :rtype: bool
        """
        return self._tag == 'changed_enterprise_admin_role'

    def is_changed_enterprise_connected_team_status(self):
        """
        Check if the union tag is ``changed_enterprise_connected_team_status``.

        :rtype: bool
        """
        return self._tag == 'changed_enterprise_connected_team_status'

    def is_ended_enterprise_admin_session(self):
        """
        Check if the union tag is ``ended_enterprise_admin_session``.

        :rtype: bool
        """
        return self._tag == 'ended_enterprise_admin_session'

    def is_ended_enterprise_admin_session_deprecated(self):
        """
        Check if the union tag is ``ended_enterprise_admin_session_deprecated``.

        :rtype: bool
        """
        return self._tag == 'ended_enterprise_admin_session_deprecated'

    def is_enterprise_settings_locking(self):
        """
        Check if the union tag is ``enterprise_settings_locking``.

        :rtype: bool
        """
        return self._tag == 'enterprise_settings_locking'

    def is_guest_admin_change_status(self):
        """
        Check if the union tag is ``guest_admin_change_status``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_change_status'

    def is_started_enterprise_admin_session(self):
        """
        Check if the union tag is ``started_enterprise_admin_session``.

        :rtype: bool
        """
        return self._tag == 'started_enterprise_admin_session'

    def is_team_merge_request_accepted(self):
        """
        Check if the union tag is ``team_merge_request_accepted``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted'

    def is_team_merge_request_accepted_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_accepted_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_shown_to_primary_team'

    def is_team_merge_request_accepted_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_accepted_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_shown_to_secondary_team'

    def is_team_merge_request_auto_canceled(self):
        """
        Check if the union tag is ``team_merge_request_auto_canceled``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_auto_canceled'

    def is_team_merge_request_canceled(self):
        """
        Check if the union tag is ``team_merge_request_canceled``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled'

    def is_team_merge_request_canceled_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_canceled_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_shown_to_primary_team'

    def is_team_merge_request_canceled_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_canceled_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_shown_to_secondary_team'

    def is_team_merge_request_expired(self):
        """
        Check if the union tag is ``team_merge_request_expired``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired'

    def is_team_merge_request_expired_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_expired_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_shown_to_primary_team'

    def is_team_merge_request_expired_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_expired_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_shown_to_secondary_team'

    def is_team_merge_request_rejected_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_rejected_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_rejected_shown_to_primary_team'

    def is_team_merge_request_rejected_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_rejected_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_rejected_shown_to_secondary_team'

    def is_team_merge_request_reminder(self):
        """
        Check if the union tag is ``team_merge_request_reminder``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder'

    def is_team_merge_request_reminder_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_reminder_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_shown_to_primary_team'

    def is_team_merge_request_reminder_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_reminder_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_shown_to_secondary_team'

    def is_team_merge_request_revoked(self):
        """
        Check if the union tag is ``team_merge_request_revoked``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_revoked'

    def is_team_merge_request_sent_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_sent_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_sent_shown_to_primary_team'

    def is_team_merge_request_sent_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_sent_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_sent_shown_to_secondary_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_admin_alerting_alert_state_changed(self):
        """
        (admin_alerting) Changed an alert state

        Only call this if :meth:`is_admin_alerting_alert_state_changed` is true.

        :rtype: AdminAlertingAlertStateChangedType
        """
        if not self.is_admin_alerting_alert_state_changed():
            raise AttributeError("tag 'admin_alerting_alert_state_changed' not set")
        return self._value

    def get_admin_alerting_changed_alert_config(self):
        """
        (admin_alerting) Changed an alert setting

        Only call this if :meth:`is_admin_alerting_changed_alert_config` is true.

        :rtype: AdminAlertingChangedAlertConfigType
        """
        if not self.is_admin_alerting_changed_alert_config():
            raise AttributeError("tag 'admin_alerting_changed_alert_config' not set")
        return self._value

    def get_admin_alerting_triggered_alert(self):
        """
        (admin_alerting) Triggered security alert

        Only call this if :meth:`is_admin_alerting_triggered_alert` is true.

        :rtype: AdminAlertingTriggeredAlertType
        """
        if not self.is_admin_alerting_triggered_alert():
            raise AttributeError("tag 'admin_alerting_triggered_alert' not set")
        return self._value

    def get_app_blocked_by_permissions(self):
        """
        (apps) Failed to connect app for member

        Only call this if :meth:`is_app_blocked_by_permissions` is true.

        :rtype: AppBlockedByPermissionsType
        """
        if not self.is_app_blocked_by_permissions():
            raise AttributeError("tag 'app_blocked_by_permissions' not set")
        return self._value

    def get_app_link_team(self):
        """
        (apps) Linked app for team

        Only call this if :meth:`is_app_link_team` is true.

        :rtype: AppLinkTeamType
        """
        if not self.is_app_link_team():
            raise AttributeError("tag 'app_link_team' not set")
        return self._value

    def get_app_link_user(self):
        """
        (apps) Linked app for member

        Only call this if :meth:`is_app_link_user` is true.

        :rtype: AppLinkUserType
        """
        if not self.is_app_link_user():
            raise AttributeError("tag 'app_link_user' not set")
        return self._value

    def get_app_unlink_team(self):
        """
        (apps) Unlinked app for team

        Only call this if :meth:`is_app_unlink_team` is true.

        :rtype: AppUnlinkTeamType
        """
        if not self.is_app_unlink_team():
            raise AttributeError("tag 'app_unlink_team' not set")
        return self._value

    def get_app_unlink_user(self):
        """
        (apps) Unlinked app for member

        Only call this if :meth:`is_app_unlink_user` is true.

        :rtype: AppUnlinkUserType
        """
        if not self.is_app_unlink_user():
            raise AttributeError("tag 'app_unlink_user' not set")
        return self._value

    def get_integration_connected(self):
        """
        (apps) Connected integration for member

        Only call this if :meth:`is_integration_connected` is true.

        :rtype: IntegrationConnectedType
        """
        if not self.is_integration_connected():
            raise AttributeError("tag 'integration_connected' not set")
        return self._value

    def get_integration_disconnected(self):
        """
        (apps) Disconnected integration for member

        Only call this if :meth:`is_integration_disconnected` is true.

        :rtype: IntegrationDisconnectedType
        """
        if not self.is_integration_disconnected():
            raise AttributeError("tag 'integration_disconnected' not set")
        return self._value

    def get_file_add_comment(self):
        """
        (comments) Added file comment

        Only call this if :meth:`is_file_add_comment` is true.

        :rtype: FileAddCommentType
        """
        if not self.is_file_add_comment():
            raise AttributeError("tag 'file_add_comment' not set")
        return self._value

    def get_file_change_comment_subscription(self):
        """
        (comments) Subscribed to or unsubscribed from comment notifications for
        file

        Only call this if :meth:`is_file_change_comment_subscription` is true.

        :rtype: FileChangeCommentSubscriptionType
        """
        if not self.is_file_change_comment_subscription():
            raise AttributeError("tag 'file_change_comment_subscription' not set")
        return self._value

    def get_file_delete_comment(self):
        """
        (comments) Deleted file comment

        Only call this if :meth:`is_file_delete_comment` is true.

        :rtype: FileDeleteCommentType
        """
        if not self.is_file_delete_comment():
            raise AttributeError("tag 'file_delete_comment' not set")
        return self._value

    def get_file_edit_comment(self):
        """
        (comments) Edited file comment

        Only call this if :meth:`is_file_edit_comment` is true.

        :rtype: FileEditCommentType
        """
        if not self.is_file_edit_comment():
            raise AttributeError("tag 'file_edit_comment' not set")
        return self._value

    def get_file_like_comment(self):
        """
        (comments) Liked file comment (deprecated, no longer logged)

        Only call this if :meth:`is_file_like_comment` is true.

        :rtype: FileLikeCommentType
        """
        if not self.is_file_like_comment():
            raise AttributeError("tag 'file_like_comment' not set")
        return self._value

    def get_file_resolve_comment(self):
        """
        (comments) Resolved file comment

        Only call this if :meth:`is_file_resolve_comment` is true.

        :rtype: FileResolveCommentType
        """
        if not self.is_file_resolve_comment():
            raise AttributeError("tag 'file_resolve_comment' not set")
        return self._value

    def get_file_unlike_comment(self):
        """
        (comments) Unliked file comment (deprecated, no longer logged)

        Only call this if :meth:`is_file_unlike_comment` is true.

        :rtype: FileUnlikeCommentType
        """
        if not self.is_file_unlike_comment():
            raise AttributeError("tag 'file_unlike_comment' not set")
        return self._value

    def get_file_unresolve_comment(self):
        """
        (comments) Unresolved file comment

        Only call this if :meth:`is_file_unresolve_comment` is true.

        :rtype: FileUnresolveCommentType
        """
        if not self.is_file_unresolve_comment():
            raise AttributeError("tag 'file_unresolve_comment' not set")
        return self._value

    def get_governance_policy_add_folders(self):
        """
        (data_governance) Added folders to policy

        Only call this if :meth:`is_governance_policy_add_folders` is true.

        :rtype: GovernancePolicyAddFoldersType
        """
        if not self.is_governance_policy_add_folders():
            raise AttributeError("tag 'governance_policy_add_folders' not set")
        return self._value

    def get_governance_policy_add_folder_failed(self):
        """
        (data_governance) Couldn't add a folder to a policy

        Only call this if :meth:`is_governance_policy_add_folder_failed` is true.

        :rtype: GovernancePolicyAddFolderFailedType
        """
        if not self.is_governance_policy_add_folder_failed():
            raise AttributeError("tag 'governance_policy_add_folder_failed' not set")
        return self._value

    def get_governance_policy_content_disposed(self):
        """
        (data_governance) Content disposed

        Only call this if :meth:`is_governance_policy_content_disposed` is true.

        :rtype: GovernancePolicyContentDisposedType
        """
        if not self.is_governance_policy_content_disposed():
            raise AttributeError("tag 'governance_policy_content_disposed' not set")
        return self._value

    def get_governance_policy_create(self):
        """
        (data_governance) Activated a new policy

        Only call this if :meth:`is_governance_policy_create` is true.

        :rtype: GovernancePolicyCreateType
        """
        if not self.is_governance_policy_create():
            raise AttributeError("tag 'governance_policy_create' not set")
        return self._value

    def get_governance_policy_delete(self):
        """
        (data_governance) Deleted a policy

        Only call this if :meth:`is_governance_policy_delete` is true.

        :rtype: GovernancePolicyDeleteType
        """
        if not self.is_governance_policy_delete():
            raise AttributeError("tag 'governance_policy_delete' not set")
        return self._value

    def get_governance_policy_edit_details(self):
        """
        (data_governance) Edited policy

        Only call this if :meth:`is_governance_policy_edit_details` is true.

        :rtype: GovernancePolicyEditDetailsType
        """
        if not self.is_governance_policy_edit_details():
            raise AttributeError("tag 'governance_policy_edit_details' not set")
        return self._value

    def get_governance_policy_edit_duration(self):
        """
        (data_governance) Changed policy duration

        Only call this if :meth:`is_governance_policy_edit_duration` is true.

        :rtype: GovernancePolicyEditDurationType
        """
        if not self.is_governance_policy_edit_duration():
            raise AttributeError("tag 'governance_policy_edit_duration' not set")
        return self._value

    def get_governance_policy_export_created(self):
        """
        (data_governance) Created a policy download

        Only call this if :meth:`is_governance_policy_export_created` is true.

        :rtype: GovernancePolicyExportCreatedType
        """
        if not self.is_governance_policy_export_created():
            raise AttributeError("tag 'governance_policy_export_created' not set")
        return self._value

    def get_governance_policy_export_removed(self):
        """
        (data_governance) Removed a policy download

        Only call this if :meth:`is_governance_policy_export_removed` is true.

        :rtype: GovernancePolicyExportRemovedType
        """
        if not self.is_governance_policy_export_removed():
            raise AttributeError("tag 'governance_policy_export_removed' not set")
        return self._value

    def get_governance_policy_remove_folders(self):
        """
        (data_governance) Removed folders from policy

        Only call this if :meth:`is_governance_policy_remove_folders` is true.

        :rtype: GovernancePolicyRemoveFoldersType
        """
        if not self.is_governance_policy_remove_folders():
            raise AttributeError("tag 'governance_policy_remove_folders' not set")
        return self._value

    def get_governance_policy_report_created(self):
        """
        (data_governance) Created a summary report for a policy

        Only call this if :meth:`is_governance_policy_report_created` is true.

        :rtype: GovernancePolicyReportCreatedType
        """
        if not self.is_governance_policy_report_created():
            raise AttributeError("tag 'governance_policy_report_created' not set")
        return self._value

    def get_governance_policy_zip_part_downloaded(self):
        """
        (data_governance) Downloaded content from a policy

        Only call this if :meth:`is_governance_policy_zip_part_downloaded` is true.

        :rtype: GovernancePolicyZipPartDownloadedType
        """
        if not self.is_governance_policy_zip_part_downloaded():
            raise AttributeError("tag 'governance_policy_zip_part_downloaded' not set")
        return self._value

    def get_legal_holds_activate_a_hold(self):
        """
        (data_governance) Activated a hold

        Only call this if :meth:`is_legal_holds_activate_a_hold` is true.

        :rtype: LegalHoldsActivateAHoldType
        """
        if not self.is_legal_holds_activate_a_hold():
            raise AttributeError("tag 'legal_holds_activate_a_hold' not set")
        return self._value

    def get_legal_holds_add_members(self):
        """
        (data_governance) Added members to a hold

        Only call this if :meth:`is_legal_holds_add_members` is true.

        :rtype: LegalHoldsAddMembersType
        """
        if not self.is_legal_holds_add_members():
            raise AttributeError("tag 'legal_holds_add_members' not set")
        return self._value

    def get_legal_holds_change_hold_details(self):
        """
        (data_governance) Edited details for a hold

        Only call this if :meth:`is_legal_holds_change_hold_details` is true.

        :rtype: LegalHoldsChangeHoldDetailsType
        """
        if not self.is_legal_holds_change_hold_details():
            raise AttributeError("tag 'legal_holds_change_hold_details' not set")
        return self._value

    def get_legal_holds_change_hold_name(self):
        """
        (data_governance) Renamed a hold

        Only call this if :meth:`is_legal_holds_change_hold_name` is true.

        :rtype: LegalHoldsChangeHoldNameType
        """
        if not self.is_legal_holds_change_hold_name():
            raise AttributeError("tag 'legal_holds_change_hold_name' not set")
        return self._value

    def get_legal_holds_export_a_hold(self):
        """
        (data_governance) Exported hold

        Only call this if :meth:`is_legal_holds_export_a_hold` is true.

        :rtype: LegalHoldsExportAHoldType
        """
        if not self.is_legal_holds_export_a_hold():
            raise AttributeError("tag 'legal_holds_export_a_hold' not set")
        return self._value

    def get_legal_holds_export_cancelled(self):
        """
        (data_governance) Canceled export for a hold

        Only call this if :meth:`is_legal_holds_export_cancelled` is true.

        :rtype: LegalHoldsExportCancelledType
        """
        if not self.is_legal_holds_export_cancelled():
            raise AttributeError("tag 'legal_holds_export_cancelled' not set")
        return self._value

    def get_legal_holds_export_downloaded(self):
        """
        (data_governance) Downloaded export for a hold

        Only call this if :meth:`is_legal_holds_export_downloaded` is true.

        :rtype: LegalHoldsExportDownloadedType
        """
        if not self.is_legal_holds_export_downloaded():
            raise AttributeError("tag 'legal_holds_export_downloaded' not set")
        return self._value

    def get_legal_holds_export_removed(self):
        """
        (data_governance) Removed export for a hold

        Only call this if :meth:`is_legal_holds_export_removed` is true.

        :rtype: LegalHoldsExportRemovedType
        """
        if not self.is_legal_holds_export_removed():
            raise AttributeError("tag 'legal_holds_export_removed' not set")
        return self._value

    def get_legal_holds_release_a_hold(self):
        """
        (data_governance) Released a hold

        Only call this if :meth:`is_legal_holds_release_a_hold` is true.

        :rtype: LegalHoldsReleaseAHoldType
        """
        if not self.is_legal_holds_release_a_hold():
            raise AttributeError("tag 'legal_holds_release_a_hold' not set")
        return self._value

    def get_legal_holds_remove_members(self):
        """
        (data_governance) Removed members from a hold

        Only call this if :meth:`is_legal_holds_remove_members` is true.

        :rtype: LegalHoldsRemoveMembersType
        """
        if not self.is_legal_holds_remove_members():
            raise AttributeError("tag 'legal_holds_remove_members' not set")
        return self._value

    def get_legal_holds_report_a_hold(self):
        """
        (data_governance) Created a summary report for a hold

        Only call this if :meth:`is_legal_holds_report_a_hold` is true.

        :rtype: LegalHoldsReportAHoldType
        """
        if not self.is_legal_holds_report_a_hold():
            raise AttributeError("tag 'legal_holds_report_a_hold' not set")
        return self._value

    def get_device_change_ip_desktop(self):
        """
        (devices) Changed IP address associated with active desktop session

        Only call this if :meth:`is_device_change_ip_desktop` is true.

        :rtype: DeviceChangeIpDesktopType
        """
        if not self.is_device_change_ip_desktop():
            raise AttributeError("tag 'device_change_ip_desktop' not set")
        return self._value

    def get_device_change_ip_mobile(self):
        """
        (devices) Changed IP address associated with active mobile session

        Only call this if :meth:`is_device_change_ip_mobile` is true.

        :rtype: DeviceChangeIpMobileType
        """
        if not self.is_device_change_ip_mobile():
            raise AttributeError("tag 'device_change_ip_mobile' not set")
        return self._value

    def get_device_change_ip_web(self):
        """
        (devices) Changed IP address associated with active web session

        Only call this if :meth:`is_device_change_ip_web` is true.

        :rtype: DeviceChangeIpWebType
        """
        if not self.is_device_change_ip_web():
            raise AttributeError("tag 'device_change_ip_web' not set")
        return self._value

    def get_device_delete_on_unlink_fail(self):
        """
        (devices) Failed to delete all files from unlinked device

        Only call this if :meth:`is_device_delete_on_unlink_fail` is true.

        :rtype: DeviceDeleteOnUnlinkFailType
        """
        if not self.is_device_delete_on_unlink_fail():
            raise AttributeError("tag 'device_delete_on_unlink_fail' not set")
        return self._value

    def get_device_delete_on_unlink_success(self):
        """
        (devices) Deleted all files from unlinked device

        Only call this if :meth:`is_device_delete_on_unlink_success` is true.

        :rtype: DeviceDeleteOnUnlinkSuccessType
        """
        if not self.is_device_delete_on_unlink_success():
            raise AttributeError("tag 'device_delete_on_unlink_success' not set")
        return self._value

    def get_device_link_fail(self):
        """
        (devices) Failed to link device

        Only call this if :meth:`is_device_link_fail` is true.

        :rtype: DeviceLinkFailType
        """
        if not self.is_device_link_fail():
            raise AttributeError("tag 'device_link_fail' not set")
        return self._value

    def get_device_link_success(self):
        """
        (devices) Linked device

        Only call this if :meth:`is_device_link_success` is true.

        :rtype: DeviceLinkSuccessType
        """
        if not self.is_device_link_success():
            raise AttributeError("tag 'device_link_success' not set")
        return self._value

    def get_device_management_disabled(self):
        """
        (devices) Disabled device management (deprecated, no longer logged)

        Only call this if :meth:`is_device_management_disabled` is true.

        :rtype: DeviceManagementDisabledType
        """
        if not self.is_device_management_disabled():
            raise AttributeError("tag 'device_management_disabled' not set")
        return self._value

    def get_device_management_enabled(self):
        """
        (devices) Enabled device management (deprecated, no longer logged)

        Only call this if :meth:`is_device_management_enabled` is true.

        :rtype: DeviceManagementEnabledType
        """
        if not self.is_device_management_enabled():
            raise AttributeError("tag 'device_management_enabled' not set")
        return self._value

    def get_device_sync_backup_status_changed(self):
        """
        (devices) Enabled/disabled backup for computer

        Only call this if :meth:`is_device_sync_backup_status_changed` is true.

        :rtype: DeviceSyncBackupStatusChangedType
        """
        if not self.is_device_sync_backup_status_changed():
            raise AttributeError("tag 'device_sync_backup_status_changed' not set")
        return self._value

    def get_device_unlink(self):
        """
        (devices) Disconnected device

        Only call this if :meth:`is_device_unlink` is true.

        :rtype: DeviceUnlinkType
        """
        if not self.is_device_unlink():
            raise AttributeError("tag 'device_unlink' not set")
        return self._value

    def get_dropbox_passwords_exported(self):
        """
        (devices) Exported passwords

        Only call this if :meth:`is_dropbox_passwords_exported` is true.

        :rtype: DropboxPasswordsExportedType
        """
        if not self.is_dropbox_passwords_exported():
            raise AttributeError("tag 'dropbox_passwords_exported' not set")
        return self._value

    def get_dropbox_passwords_new_device_enrolled(self):
        """
        (devices) Enrolled new Dropbox Passwords device

        Only call this if :meth:`is_dropbox_passwords_new_device_enrolled` is true.

        :rtype: DropboxPasswordsNewDeviceEnrolledType
        """
        if not self.is_dropbox_passwords_new_device_enrolled():
            raise AttributeError("tag 'dropbox_passwords_new_device_enrolled' not set")
        return self._value

    def get_emm_refresh_auth_token(self):
        """
        (devices) Refreshed auth token used for setting up EMM

        Only call this if :meth:`is_emm_refresh_auth_token` is true.

        :rtype: EmmRefreshAuthTokenType
        """
        if not self.is_emm_refresh_auth_token():
            raise AttributeError("tag 'emm_refresh_auth_token' not set")
        return self._value

    def get_external_drive_backup_eligibility_status_checked(self):
        """
        (devices) Checked external drive backup eligibility status

        Only call this if :meth:`is_external_drive_backup_eligibility_status_checked` is true.

        :rtype: ExternalDriveBackupEligibilityStatusCheckedType
        """
        if not self.is_external_drive_backup_eligibility_status_checked():
            raise AttributeError("tag 'external_drive_backup_eligibility_status_checked' not set")
        return self._value

    def get_external_drive_backup_status_changed(self):
        """
        (devices) Modified external drive backup

        Only call this if :meth:`is_external_drive_backup_status_changed` is true.

        :rtype: ExternalDriveBackupStatusChangedType
        """
        if not self.is_external_drive_backup_status_changed():
            raise AttributeError("tag 'external_drive_backup_status_changed' not set")
        return self._value

    def get_account_capture_change_availability(self):
        """
        (domains) Granted/revoked option to enable account capture on team
        domains

        Only call this if :meth:`is_account_capture_change_availability` is true.

        :rtype: AccountCaptureChangeAvailabilityType
        """
        if not self.is_account_capture_change_availability():
            raise AttributeError("tag 'account_capture_change_availability' not set")
        return self._value

    def get_account_capture_migrate_account(self):
        """
        (domains) Account-captured user migrated account to team

        Only call this if :meth:`is_account_capture_migrate_account` is true.

        :rtype: AccountCaptureMigrateAccountType
        """
        if not self.is_account_capture_migrate_account():
            raise AttributeError("tag 'account_capture_migrate_account' not set")
        return self._value

    def get_account_capture_notification_emails_sent(self):
        """
        (domains) Sent account capture email to all unmanaged members

        Only call this if :meth:`is_account_capture_notification_emails_sent` is true.

        :rtype: AccountCaptureNotificationEmailsSentType
        """
        if not self.is_account_capture_notification_emails_sent():
            raise AttributeError("tag 'account_capture_notification_emails_sent' not set")
        return self._value

    def get_account_capture_relinquish_account(self):
        """
        (domains) Account-captured user changed account email to personal email

        Only call this if :meth:`is_account_capture_relinquish_account` is true.

        :rtype: AccountCaptureRelinquishAccountType
        """
        if not self.is_account_capture_relinquish_account():
            raise AttributeError("tag 'account_capture_relinquish_account' not set")
        return self._value

    def get_disabled_domain_invites(self):
        """
        (domains) Disabled domain invites (deprecated, no longer logged)

        Only call this if :meth:`is_disabled_domain_invites` is true.

        :rtype: DisabledDomainInvitesType
        """
        if not self.is_disabled_domain_invites():
            raise AttributeError("tag 'disabled_domain_invites' not set")
        return self._value

    def get_domain_invites_approve_request_to_join_team(self):
        """
        (domains) Approved user's request to join team

        Only call this if :meth:`is_domain_invites_approve_request_to_join_team` is true.

        :rtype: DomainInvitesApproveRequestToJoinTeamType
        """
        if not self.is_domain_invites_approve_request_to_join_team():
            raise AttributeError("tag 'domain_invites_approve_request_to_join_team' not set")
        return self._value

    def get_domain_invites_decline_request_to_join_team(self):
        """
        (domains) Declined user's request to join team

        Only call this if :meth:`is_domain_invites_decline_request_to_join_team` is true.

        :rtype: DomainInvitesDeclineRequestToJoinTeamType
        """
        if not self.is_domain_invites_decline_request_to_join_team():
            raise AttributeError("tag 'domain_invites_decline_request_to_join_team' not set")
        return self._value

    def get_domain_invites_email_existing_users(self):
        """
        (domains) Sent domain invites to existing domain accounts (deprecated,
        no longer logged)

        Only call this if :meth:`is_domain_invites_email_existing_users` is true.

        :rtype: DomainInvitesEmailExistingUsersType
        """
        if not self.is_domain_invites_email_existing_users():
            raise AttributeError("tag 'domain_invites_email_existing_users' not set")
        return self._value

    def get_domain_invites_request_to_join_team(self):
        """
        (domains) Requested to join team

        Only call this if :meth:`is_domain_invites_request_to_join_team` is true.

        :rtype: DomainInvitesRequestToJoinTeamType
        """
        if not self.is_domain_invites_request_to_join_team():
            raise AttributeError("tag 'domain_invites_request_to_join_team' not set")
        return self._value

    def get_domain_invites_set_invite_new_user_pref_to_no(self):
        """
        (domains) Disabled "Automatically invite new users" (deprecated, no
        longer logged)

        Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_no` is true.

        :rtype: DomainInvitesSetInviteNewUserPrefToNoType
        """
        if not self.is_domain_invites_set_invite_new_user_pref_to_no():
            raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_no' not set")
        return self._value

    def get_domain_invites_set_invite_new_user_pref_to_yes(self):
        """
        (domains) Enabled "Automatically invite new users" (deprecated, no
        longer logged)

        Only call this if :meth:`is_domain_invites_set_invite_new_user_pref_to_yes` is true.

        :rtype: DomainInvitesSetInviteNewUserPrefToYesType
        """
        if not self.is_domain_invites_set_invite_new_user_pref_to_yes():
            raise AttributeError("tag 'domain_invites_set_invite_new_user_pref_to_yes' not set")
        return self._value

    def get_domain_verification_add_domain_fail(self):
        """
        (domains) Failed to verify team domain

        Only call this if :meth:`is_domain_verification_add_domain_fail` is true.

        :rtype: DomainVerificationAddDomainFailType
        """
        if not self.is_domain_verification_add_domain_fail():
            raise AttributeError("tag 'domain_verification_add_domain_fail' not set")
        return self._value

    def get_domain_verification_add_domain_success(self):
        """
        (domains) Verified team domain

        Only call this if :meth:`is_domain_verification_add_domain_success` is true.

        :rtype: DomainVerificationAddDomainSuccessType
        """
        if not self.is_domain_verification_add_domain_success():
            raise AttributeError("tag 'domain_verification_add_domain_success' not set")
        return self._value

    def get_domain_verification_remove_domain(self):
        """
        (domains) Removed domain from list of verified team domains

        Only call this if :meth:`is_domain_verification_remove_domain` is true.

        :rtype: DomainVerificationRemoveDomainType
        """
        if not self.is_domain_verification_remove_domain():
            raise AttributeError("tag 'domain_verification_remove_domain' not set")
        return self._value

    def get_enabled_domain_invites(self):
        """
        (domains) Enabled domain invites (deprecated, no longer logged)

        Only call this if :meth:`is_enabled_domain_invites` is true.

        :rtype: EnabledDomainInvitesType
        """
        if not self.is_enabled_domain_invites():
            raise AttributeError("tag 'enabled_domain_invites' not set")
        return self._value

    def get_apply_naming_convention(self):
        """
        (file_operations) Applied naming convention

        Only call this if :meth:`is_apply_naming_convention` is true.

        :rtype: ApplyNamingConventionType
        """
        if not self.is_apply_naming_convention():
            raise AttributeError("tag 'apply_naming_convention' not set")
        return self._value

    def get_create_folder(self):
        """
        (file_operations) Created folders (deprecated, no longer logged)

        Only call this if :meth:`is_create_folder` is true.

        :rtype: CreateFolderType
        """
        if not self.is_create_folder():
            raise AttributeError("tag 'create_folder' not set")
        return self._value

    def get_file_add(self):
        """
        (file_operations) Added files and/or folders

        Only call this if :meth:`is_file_add` is true.

        :rtype: FileAddType
        """
        if not self.is_file_add():
            raise AttributeError("tag 'file_add' not set")
        return self._value

    def get_file_copy(self):
        """
        (file_operations) Copied files and/or folders

        Only call this if :meth:`is_file_copy` is true.

        :rtype: FileCopyType
        """
        if not self.is_file_copy():
            raise AttributeError("tag 'file_copy' not set")
        return self._value

    def get_file_delete(self):
        """
        (file_operations) Deleted files and/or folders

        Only call this if :meth:`is_file_delete` is true.

        :rtype: FileDeleteType
        """
        if not self.is_file_delete():
            raise AttributeError("tag 'file_delete' not set")
        return self._value

    def get_file_download(self):
        """
        (file_operations) Downloaded files and/or folders

        Only call this if :meth:`is_file_download` is true.

        :rtype: FileDownloadType
        """
        if not self.is_file_download():
            raise AttributeError("tag 'file_download' not set")
        return self._value

    def get_file_edit(self):
        """
        (file_operations) Edited files

        Only call this if :meth:`is_file_edit` is true.

        :rtype: FileEditType
        """
        if not self.is_file_edit():
            raise AttributeError("tag 'file_edit' not set")
        return self._value

    def get_file_get_copy_reference(self):
        """
        (file_operations) Created copy reference to file/folder

        Only call this if :meth:`is_file_get_copy_reference` is true.

        :rtype: FileGetCopyReferenceType
        """
        if not self.is_file_get_copy_reference():
            raise AttributeError("tag 'file_get_copy_reference' not set")
        return self._value

    def get_file_locking_lock_status_changed(self):
        """
        (file_operations) Locked/unlocked editing for a file

        Only call this if :meth:`is_file_locking_lock_status_changed` is true.

        :rtype: FileLockingLockStatusChangedType
        """
        if not self.is_file_locking_lock_status_changed():
            raise AttributeError("tag 'file_locking_lock_status_changed' not set")
        return self._value

    def get_file_move(self):
        """
        (file_operations) Moved files and/or folders

        Only call this if :meth:`is_file_move` is true.

        :rtype: FileMoveType
        """
        if not self.is_file_move():
            raise AttributeError("tag 'file_move' not set")
        return self._value

    def get_file_permanently_delete(self):
        """
        (file_operations) Permanently deleted files and/or folders

        Only call this if :meth:`is_file_permanently_delete` is true.

        :rtype: FilePermanentlyDeleteType
        """
        if not self.is_file_permanently_delete():
            raise AttributeError("tag 'file_permanently_delete' not set")
        return self._value

    def get_file_preview(self):
        """
        (file_operations) Previewed files and/or folders

        Only call this if :meth:`is_file_preview` is true.

        :rtype: FilePreviewType
        """
        if not self.is_file_preview():
            raise AttributeError("tag 'file_preview' not set")
        return self._value

    def get_file_rename(self):
        """
        (file_operations) Renamed files and/or folders

        Only call this if :meth:`is_file_rename` is true.

        :rtype: FileRenameType
        """
        if not self.is_file_rename():
            raise AttributeError("tag 'file_rename' not set")
        return self._value

    def get_file_restore(self):
        """
        (file_operations) Restored deleted files and/or folders

        Only call this if :meth:`is_file_restore` is true.

        :rtype: FileRestoreType
        """
        if not self.is_file_restore():
            raise AttributeError("tag 'file_restore' not set")
        return self._value

    def get_file_revert(self):
        """
        (file_operations) Reverted files to previous version

        Only call this if :meth:`is_file_revert` is true.

        :rtype: FileRevertType
        """
        if not self.is_file_revert():
            raise AttributeError("tag 'file_revert' not set")
        return self._value

    def get_file_rollback_changes(self):
        """
        (file_operations) Rolled back file actions

        Only call this if :meth:`is_file_rollback_changes` is true.

        :rtype: FileRollbackChangesType
        """
        if not self.is_file_rollback_changes():
            raise AttributeError("tag 'file_rollback_changes' not set")
        return self._value

    def get_file_save_copy_reference(self):
        """
        (file_operations) Saved file/folder using copy reference

        Only call this if :meth:`is_file_save_copy_reference` is true.

        :rtype: FileSaveCopyReferenceType
        """
        if not self.is_file_save_copy_reference():
            raise AttributeError("tag 'file_save_copy_reference' not set")
        return self._value

    def get_folder_overview_description_changed(self):
        """
        (file_operations) Updated folder overview

        Only call this if :meth:`is_folder_overview_description_changed` is true.

        :rtype: FolderOverviewDescriptionChangedType
        """
        if not self.is_folder_overview_description_changed():
            raise AttributeError("tag 'folder_overview_description_changed' not set")
        return self._value

    def get_folder_overview_item_pinned(self):
        """
        (file_operations) Pinned item to folder overview

        Only call this if :meth:`is_folder_overview_item_pinned` is true.

        :rtype: FolderOverviewItemPinnedType
        """
        if not self.is_folder_overview_item_pinned():
            raise AttributeError("tag 'folder_overview_item_pinned' not set")
        return self._value

    def get_folder_overview_item_unpinned(self):
        """
        (file_operations) Unpinned item from folder overview

        Only call this if :meth:`is_folder_overview_item_unpinned` is true.

        :rtype: FolderOverviewItemUnpinnedType
        """
        if not self.is_folder_overview_item_unpinned():
            raise AttributeError("tag 'folder_overview_item_unpinned' not set")
        return self._value

    def get_object_label_added(self):
        """
        (file_operations) Added a label

        Only call this if :meth:`is_object_label_added` is true.

        :rtype: ObjectLabelAddedType
        """
        if not self.is_object_label_added():
            raise AttributeError("tag 'object_label_added' not set")
        return self._value

    def get_object_label_removed(self):
        """
        (file_operations) Removed a label

        Only call this if :meth:`is_object_label_removed` is true.

        :rtype: ObjectLabelRemovedType
        """
        if not self.is_object_label_removed():
            raise AttributeError("tag 'object_label_removed' not set")
        return self._value

    def get_object_label_updated_value(self):
        """
        (file_operations) Updated a label's value

        Only call this if :meth:`is_object_label_updated_value` is true.

        :rtype: ObjectLabelUpdatedValueType
        """
        if not self.is_object_label_updated_value():
            raise AttributeError("tag 'object_label_updated_value' not set")
        return self._value

    def get_organize_folder_with_tidy(self):
        """
        (file_operations) Organized a folder with multi-file organize

        Only call this if :meth:`is_organize_folder_with_tidy` is true.

        :rtype: OrganizeFolderWithTidyType
        """
        if not self.is_organize_folder_with_tidy():
            raise AttributeError("tag 'organize_folder_with_tidy' not set")
        return self._value

    def get_rewind_folder(self):
        """
        (file_operations) Rewound a folder

        Only call this if :meth:`is_rewind_folder` is true.

        :rtype: RewindFolderType
        """
        if not self.is_rewind_folder():
            raise AttributeError("tag 'rewind_folder' not set")
        return self._value

    def get_undo_naming_convention(self):
        """
        (file_operations) Reverted naming convention

        Only call this if :meth:`is_undo_naming_convention` is true.

        :rtype: UndoNamingConventionType
        """
        if not self.is_undo_naming_convention():
            raise AttributeError("tag 'undo_naming_convention' not set")
        return self._value

    def get_undo_organize_folder_with_tidy(self):
        """
        (file_operations) Removed multi-file organize

        Only call this if :meth:`is_undo_organize_folder_with_tidy` is true.

        :rtype: UndoOrganizeFolderWithTidyType
        """
        if not self.is_undo_organize_folder_with_tidy():
            raise AttributeError("tag 'undo_organize_folder_with_tidy' not set")
        return self._value

    def get_user_tags_added(self):
        """
        (file_operations) Tagged a file

        Only call this if :meth:`is_user_tags_added` is true.

        :rtype: UserTagsAddedType
        """
        if not self.is_user_tags_added():
            raise AttributeError("tag 'user_tags_added' not set")
        return self._value

    def get_user_tags_removed(self):
        """
        (file_operations) Removed tags

        Only call this if :meth:`is_user_tags_removed` is true.

        :rtype: UserTagsRemovedType
        """
        if not self.is_user_tags_removed():
            raise AttributeError("tag 'user_tags_removed' not set")
        return self._value

    def get_email_ingest_receive_file(self):
        """
        (file_requests) Received files via Email to Dropbox

        Only call this if :meth:`is_email_ingest_receive_file` is true.

        :rtype: EmailIngestReceiveFileType
        """
        if not self.is_email_ingest_receive_file():
            raise AttributeError("tag 'email_ingest_receive_file' not set")
        return self._value

    def get_file_request_change(self):
        """
        (file_requests) Changed file request

        Only call this if :meth:`is_file_request_change` is true.

        :rtype: FileRequestChangeType
        """
        if not self.is_file_request_change():
            raise AttributeError("tag 'file_request_change' not set")
        return self._value

    def get_file_request_close(self):
        """
        (file_requests) Closed file request

        Only call this if :meth:`is_file_request_close` is true.

        :rtype: FileRequestCloseType
        """
        if not self.is_file_request_close():
            raise AttributeError("tag 'file_request_close' not set")
        return self._value

    def get_file_request_create(self):
        """
        (file_requests) Created file request

        Only call this if :meth:`is_file_request_create` is true.

        :rtype: FileRequestCreateType
        """
        if not self.is_file_request_create():
            raise AttributeError("tag 'file_request_create' not set")
        return self._value

    def get_file_request_delete(self):
        """
        (file_requests) Delete file request

        Only call this if :meth:`is_file_request_delete` is true.

        :rtype: FileRequestDeleteType
        """
        if not self.is_file_request_delete():
            raise AttributeError("tag 'file_request_delete' not set")
        return self._value

    def get_file_request_receive_file(self):
        """
        (file_requests) Received files for file request

        Only call this if :meth:`is_file_request_receive_file` is true.

        :rtype: FileRequestReceiveFileType
        """
        if not self.is_file_request_receive_file():
            raise AttributeError("tag 'file_request_receive_file' not set")
        return self._value

    def get_group_add_external_id(self):
        """
        (groups) Added external ID for group

        Only call this if :meth:`is_group_add_external_id` is true.

        :rtype: GroupAddExternalIdType
        """
        if not self.is_group_add_external_id():
            raise AttributeError("tag 'group_add_external_id' not set")
        return self._value

    def get_group_add_member(self):
        """
        (groups) Added team members to group

        Only call this if :meth:`is_group_add_member` is true.

        :rtype: GroupAddMemberType
        """
        if not self.is_group_add_member():
            raise AttributeError("tag 'group_add_member' not set")
        return self._value

    def get_group_change_external_id(self):
        """
        (groups) Changed external ID for group

        Only call this if :meth:`is_group_change_external_id` is true.

        :rtype: GroupChangeExternalIdType
        """
        if not self.is_group_change_external_id():
            raise AttributeError("tag 'group_change_external_id' not set")
        return self._value

    def get_group_change_management_type(self):
        """
        (groups) Changed group management type

        Only call this if :meth:`is_group_change_management_type` is true.

        :rtype: GroupChangeManagementTypeType
        """
        if not self.is_group_change_management_type():
            raise AttributeError("tag 'group_change_management_type' not set")
        return self._value

    def get_group_change_member_role(self):
        """
        (groups) Changed manager permissions of group member

        Only call this if :meth:`is_group_change_member_role` is true.

        :rtype: GroupChangeMemberRoleType
        """
        if not self.is_group_change_member_role():
            raise AttributeError("tag 'group_change_member_role' not set")
        return self._value

    def get_group_create(self):
        """
        (groups) Created group

        Only call this if :meth:`is_group_create` is true.

        :rtype: GroupCreateType
        """
        if not self.is_group_create():
            raise AttributeError("tag 'group_create' not set")
        return self._value

    def get_group_delete(self):
        """
        (groups) Deleted group

        Only call this if :meth:`is_group_delete` is true.

        :rtype: GroupDeleteType
        """
        if not self.is_group_delete():
            raise AttributeError("tag 'group_delete' not set")
        return self._value

    def get_group_description_updated(self):
        """
        (groups) Updated group (deprecated, no longer logged)

        Only call this if :meth:`is_group_description_updated` is true.

        :rtype: GroupDescriptionUpdatedType
        """
        if not self.is_group_description_updated():
            raise AttributeError("tag 'group_description_updated' not set")
        return self._value

    def get_group_join_policy_updated(self):
        """
        (groups) Updated group join policy (deprecated, no longer logged)

        Only call this if :meth:`is_group_join_policy_updated` is true.

        :rtype: GroupJoinPolicyUpdatedType
        """
        if not self.is_group_join_policy_updated():
            raise AttributeError("tag 'group_join_policy_updated' not set")
        return self._value

    def get_group_moved(self):
        """
        (groups) Moved group (deprecated, no longer logged)

        Only call this if :meth:`is_group_moved` is true.

        :rtype: GroupMovedType
        """
        if not self.is_group_moved():
            raise AttributeError("tag 'group_moved' not set")
        return self._value

    def get_group_remove_external_id(self):
        """
        (groups) Removed external ID for group

        Only call this if :meth:`is_group_remove_external_id` is true.

        :rtype: GroupRemoveExternalIdType
        """
        if not self.is_group_remove_external_id():
            raise AttributeError("tag 'group_remove_external_id' not set")
        return self._value

    def get_group_remove_member(self):
        """
        (groups) Removed team members from group

        Only call this if :meth:`is_group_remove_member` is true.

        :rtype: GroupRemoveMemberType
        """
        if not self.is_group_remove_member():
            raise AttributeError("tag 'group_remove_member' not set")
        return self._value

    def get_group_rename(self):
        """
        (groups) Renamed group

        Only call this if :meth:`is_group_rename` is true.

        :rtype: GroupRenameType
        """
        if not self.is_group_rename():
            raise AttributeError("tag 'group_rename' not set")
        return self._value

    def get_account_lock_or_unlocked(self):
        """
        (logins) Unlocked/locked account after failed sign in attempts

        Only call this if :meth:`is_account_lock_or_unlocked` is true.

        :rtype: AccountLockOrUnlockedType
        """
        if not self.is_account_lock_or_unlocked():
            raise AttributeError("tag 'account_lock_or_unlocked' not set")
        return self._value

    def get_emm_error(self):
        """
        (logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to
        sign in')

        Only call this if :meth:`is_emm_error` is true.

        :rtype: EmmErrorType
        """
        if not self.is_emm_error():
            raise AttributeError("tag 'emm_error' not set")
        return self._value

    def get_guest_admin_signed_in_via_trusted_teams(self):
        """
        (logins) Started trusted team admin session

        Only call this if :meth:`is_guest_admin_signed_in_via_trusted_teams` is true.

        :rtype: GuestAdminSignedInViaTrustedTeamsType
        """
        if not self.is_guest_admin_signed_in_via_trusted_teams():
            raise AttributeError("tag 'guest_admin_signed_in_via_trusted_teams' not set")
        return self._value

    def get_guest_admin_signed_out_via_trusted_teams(self):
        """
        (logins) Ended trusted team admin session

        Only call this if :meth:`is_guest_admin_signed_out_via_trusted_teams` is true.

        :rtype: GuestAdminSignedOutViaTrustedTeamsType
        """
        if not self.is_guest_admin_signed_out_via_trusted_teams():
            raise AttributeError("tag 'guest_admin_signed_out_via_trusted_teams' not set")
        return self._value

    def get_login_fail(self):
        """
        (logins) Failed to sign in

        Only call this if :meth:`is_login_fail` is true.

        :rtype: LoginFailType
        """
        if not self.is_login_fail():
            raise AttributeError("tag 'login_fail' not set")
        return self._value

    def get_login_success(self):
        """
        (logins) Signed in

        Only call this if :meth:`is_login_success` is true.

        :rtype: LoginSuccessType
        """
        if not self.is_login_success():
            raise AttributeError("tag 'login_success' not set")
        return self._value

    def get_logout(self):
        """
        (logins) Signed out

        Only call this if :meth:`is_logout` is true.

        :rtype: LogoutType
        """
        if not self.is_logout():
            raise AttributeError("tag 'logout' not set")
        return self._value

    def get_reseller_support_session_end(self):
        """
        (logins) Ended reseller support session

        Only call this if :meth:`is_reseller_support_session_end` is true.

        :rtype: ResellerSupportSessionEndType
        """
        if not self.is_reseller_support_session_end():
            raise AttributeError("tag 'reseller_support_session_end' not set")
        return self._value

    def get_reseller_support_session_start(self):
        """
        (logins) Started reseller support session

        Only call this if :meth:`is_reseller_support_session_start` is true.

        :rtype: ResellerSupportSessionStartType
        """
        if not self.is_reseller_support_session_start():
            raise AttributeError("tag 'reseller_support_session_start' not set")
        return self._value

    def get_sign_in_as_session_end(self):
        """
        (logins) Ended admin sign-in-as session

        Only call this if :meth:`is_sign_in_as_session_end` is true.

        :rtype: SignInAsSessionEndType
        """
        if not self.is_sign_in_as_session_end():
            raise AttributeError("tag 'sign_in_as_session_end' not set")
        return self._value

    def get_sign_in_as_session_start(self):
        """
        (logins) Started admin sign-in-as session

        Only call this if :meth:`is_sign_in_as_session_start` is true.

        :rtype: SignInAsSessionStartType
        """
        if not self.is_sign_in_as_session_start():
            raise AttributeError("tag 'sign_in_as_session_start' not set")
        return self._value

    def get_sso_error(self):
        """
        (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to
        sign in')

        Only call this if :meth:`is_sso_error` is true.

        :rtype: SsoErrorType
        """
        if not self.is_sso_error():
            raise AttributeError("tag 'sso_error' not set")
        return self._value

    def get_create_team_invite_link(self):
        """
        (members) Created team invite link

        Only call this if :meth:`is_create_team_invite_link` is true.

        :rtype: CreateTeamInviteLinkType
        """
        if not self.is_create_team_invite_link():
            raise AttributeError("tag 'create_team_invite_link' not set")
        return self._value

    def get_delete_team_invite_link(self):
        """
        (members) Deleted team invite link

        Only call this if :meth:`is_delete_team_invite_link` is true.

        :rtype: DeleteTeamInviteLinkType
        """
        if not self.is_delete_team_invite_link():
            raise AttributeError("tag 'delete_team_invite_link' not set")
        return self._value

    def get_member_add_external_id(self):
        """
        (members) Added an external ID for team member

        Only call this if :meth:`is_member_add_external_id` is true.

        :rtype: MemberAddExternalIdType
        """
        if not self.is_member_add_external_id():
            raise AttributeError("tag 'member_add_external_id' not set")
        return self._value

    def get_member_add_name(self):
        """
        (members) Added team member name

        Only call this if :meth:`is_member_add_name` is true.

        :rtype: MemberAddNameType
        """
        if not self.is_member_add_name():
            raise AttributeError("tag 'member_add_name' not set")
        return self._value

    def get_member_change_admin_role(self):
        """
        (members) Changed team member admin role

        Only call this if :meth:`is_member_change_admin_role` is true.

        :rtype: MemberChangeAdminRoleType
        """
        if not self.is_member_change_admin_role():
            raise AttributeError("tag 'member_change_admin_role' not set")
        return self._value

    def get_member_change_email(self):
        """
        (members) Changed team member email

        Only call this if :meth:`is_member_change_email` is true.

        :rtype: MemberChangeEmailType
        """
        if not self.is_member_change_email():
            raise AttributeError("tag 'member_change_email' not set")
        return self._value

    def get_member_change_external_id(self):
        """
        (members) Changed the external ID for team member

        Only call this if :meth:`is_member_change_external_id` is true.

        :rtype: MemberChangeExternalIdType
        """
        if not self.is_member_change_external_id():
            raise AttributeError("tag 'member_change_external_id' not set")
        return self._value

    def get_member_change_membership_type(self):
        """
        (members) Changed membership type (limited/full) of member (deprecated,
        no longer logged)

        Only call this if :meth:`is_member_change_membership_type` is true.

        :rtype: MemberChangeMembershipTypeType
        """
        if not self.is_member_change_membership_type():
            raise AttributeError("tag 'member_change_membership_type' not set")
        return self._value

    def get_member_change_name(self):
        """
        (members) Changed team member name

        Only call this if :meth:`is_member_change_name` is true.

        :rtype: MemberChangeNameType
        """
        if not self.is_member_change_name():
            raise AttributeError("tag 'member_change_name' not set")
        return self._value

    def get_member_change_reseller_role(self):
        """
        (members) Changed team member reseller role

        Only call this if :meth:`is_member_change_reseller_role` is true.

        :rtype: MemberChangeResellerRoleType
        """
        if not self.is_member_change_reseller_role():
            raise AttributeError("tag 'member_change_reseller_role' not set")
        return self._value

    def get_member_change_status(self):
        """
        (members) Changed member status (invited, joined, suspended, etc.)

        Only call this if :meth:`is_member_change_status` is true.

        :rtype: MemberChangeStatusType
        """
        if not self.is_member_change_status():
            raise AttributeError("tag 'member_change_status' not set")
        return self._value

    def get_member_delete_manual_contacts(self):
        """
        (members) Cleared manually added contacts

        Only call this if :meth:`is_member_delete_manual_contacts` is true.

        :rtype: MemberDeleteManualContactsType
        """
        if not self.is_member_delete_manual_contacts():
            raise AttributeError("tag 'member_delete_manual_contacts' not set")
        return self._value

    def get_member_delete_profile_photo(self):
        """
        (members) Deleted team member profile photo

        Only call this if :meth:`is_member_delete_profile_photo` is true.

        :rtype: MemberDeleteProfilePhotoType
        """
        if not self.is_member_delete_profile_photo():
            raise AttributeError("tag 'member_delete_profile_photo' not set")
        return self._value

    def get_member_permanently_delete_account_contents(self):
        """
        (members) Permanently deleted contents of deleted team member account

        Only call this if :meth:`is_member_permanently_delete_account_contents` is true.

        :rtype: MemberPermanentlyDeleteAccountContentsType
        """
        if not self.is_member_permanently_delete_account_contents():
            raise AttributeError("tag 'member_permanently_delete_account_contents' not set")
        return self._value

    def get_member_remove_external_id(self):
        """
        (members) Removed the external ID for team member

        Only call this if :meth:`is_member_remove_external_id` is true.

        :rtype: MemberRemoveExternalIdType
        """
        if not self.is_member_remove_external_id():
            raise AttributeError("tag 'member_remove_external_id' not set")
        return self._value

    def get_member_set_profile_photo(self):
        """
        (members) Set team member profile photo

        Only call this if :meth:`is_member_set_profile_photo` is true.

        :rtype: MemberSetProfilePhotoType
        """
        if not self.is_member_set_profile_photo():
            raise AttributeError("tag 'member_set_profile_photo' not set")
        return self._value

    def get_member_space_limits_add_custom_quota(self):
        """
        (members) Set custom member space limit

        Only call this if :meth:`is_member_space_limits_add_custom_quota` is true.

        :rtype: MemberSpaceLimitsAddCustomQuotaType
        """
        if not self.is_member_space_limits_add_custom_quota():
            raise AttributeError("tag 'member_space_limits_add_custom_quota' not set")
        return self._value

    def get_member_space_limits_change_custom_quota(self):
        """
        (members) Changed custom member space limit

        Only call this if :meth:`is_member_space_limits_change_custom_quota` is true.

        :rtype: MemberSpaceLimitsChangeCustomQuotaType
        """
        if not self.is_member_space_limits_change_custom_quota():
            raise AttributeError("tag 'member_space_limits_change_custom_quota' not set")
        return self._value

    def get_member_space_limits_change_status(self):
        """
        (members) Changed space limit status

        Only call this if :meth:`is_member_space_limits_change_status` is true.

        :rtype: MemberSpaceLimitsChangeStatusType
        """
        if not self.is_member_space_limits_change_status():
            raise AttributeError("tag 'member_space_limits_change_status' not set")
        return self._value

    def get_member_space_limits_remove_custom_quota(self):
        """
        (members) Removed custom member space limit

        Only call this if :meth:`is_member_space_limits_remove_custom_quota` is true.

        :rtype: MemberSpaceLimitsRemoveCustomQuotaType
        """
        if not self.is_member_space_limits_remove_custom_quota():
            raise AttributeError("tag 'member_space_limits_remove_custom_quota' not set")
        return self._value

    def get_member_suggest(self):
        """
        (members) Suggested person to add to team

        Only call this if :meth:`is_member_suggest` is true.

        :rtype: MemberSuggestType
        """
        if not self.is_member_suggest():
            raise AttributeError("tag 'member_suggest' not set")
        return self._value

    def get_member_transfer_account_contents(self):
        """
        (members) Transferred contents of deleted member account to another
        member

        Only call this if :meth:`is_member_transfer_account_contents` is true.

        :rtype: MemberTransferAccountContentsType
        """
        if not self.is_member_transfer_account_contents():
            raise AttributeError("tag 'member_transfer_account_contents' not set")
        return self._value

    def get_pending_secondary_email_added(self):
        """
        (members) Added pending secondary email

        Only call this if :meth:`is_pending_secondary_email_added` is true.

        :rtype: PendingSecondaryEmailAddedType
        """
        if not self.is_pending_secondary_email_added():
            raise AttributeError("tag 'pending_secondary_email_added' not set")
        return self._value

    def get_secondary_email_deleted(self):
        """
        (members) Deleted secondary email

        Only call this if :meth:`is_secondary_email_deleted` is true.

        :rtype: SecondaryEmailDeletedType
        """
        if not self.is_secondary_email_deleted():
            raise AttributeError("tag 'secondary_email_deleted' not set")
        return self._value

    def get_secondary_email_verified(self):
        """
        (members) Verified secondary email

        Only call this if :meth:`is_secondary_email_verified` is true.

        :rtype: SecondaryEmailVerifiedType
        """
        if not self.is_secondary_email_verified():
            raise AttributeError("tag 'secondary_email_verified' not set")
        return self._value

    def get_secondary_mails_policy_changed(self):
        """
        (members) Secondary mails policy changed

        Only call this if :meth:`is_secondary_mails_policy_changed` is true.

        :rtype: SecondaryMailsPolicyChangedType
        """
        if not self.is_secondary_mails_policy_changed():
            raise AttributeError("tag 'secondary_mails_policy_changed' not set")
        return self._value

    def get_binder_add_page(self):
        """
        (paper) Added Binder page (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_add_page` is true.

        :rtype: BinderAddPageType
        """
        if not self.is_binder_add_page():
            raise AttributeError("tag 'binder_add_page' not set")
        return self._value

    def get_binder_add_section(self):
        """
        (paper) Added Binder section (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_add_section` is true.

        :rtype: BinderAddSectionType
        """
        if not self.is_binder_add_section():
            raise AttributeError("tag 'binder_add_section' not set")
        return self._value

    def get_binder_remove_page(self):
        """
        (paper) Removed Binder page (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_remove_page` is true.

        :rtype: BinderRemovePageType
        """
        if not self.is_binder_remove_page():
            raise AttributeError("tag 'binder_remove_page' not set")
        return self._value

    def get_binder_remove_section(self):
        """
        (paper) Removed Binder section (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_remove_section` is true.

        :rtype: BinderRemoveSectionType
        """
        if not self.is_binder_remove_section():
            raise AttributeError("tag 'binder_remove_section' not set")
        return self._value

    def get_binder_rename_page(self):
        """
        (paper) Renamed Binder page (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_rename_page` is true.

        :rtype: BinderRenamePageType
        """
        if not self.is_binder_rename_page():
            raise AttributeError("tag 'binder_rename_page' not set")
        return self._value

    def get_binder_rename_section(self):
        """
        (paper) Renamed Binder section (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_rename_section` is true.

        :rtype: BinderRenameSectionType
        """
        if not self.is_binder_rename_section():
            raise AttributeError("tag 'binder_rename_section' not set")
        return self._value

    def get_binder_reorder_page(self):
        """
        (paper) Reordered Binder page (deprecated, replaced by 'Edited files')

        Only call this if :meth:`is_binder_reorder_page` is true.

        :rtype: BinderReorderPageType
        """
        if not self.is_binder_reorder_page():
            raise AttributeError("tag 'binder_reorder_page' not set")
        return self._value

    def get_binder_reorder_section(self):
        """
        (paper) Reordered Binder section (deprecated, replaced by 'Edited
        files')

        Only call this if :meth:`is_binder_reorder_section` is true.

        :rtype: BinderReorderSectionType
        """
        if not self.is_binder_reorder_section():
            raise AttributeError("tag 'binder_reorder_section' not set")
        return self._value

    def get_paper_content_add_member(self):
        """
        (paper) Added users and/or groups to Paper doc/folder

        Only call this if :meth:`is_paper_content_add_member` is true.

        :rtype: PaperContentAddMemberType
        """
        if not self.is_paper_content_add_member():
            raise AttributeError("tag 'paper_content_add_member' not set")
        return self._value

    def get_paper_content_add_to_folder(self):
        """
        (paper) Added Paper doc/folder to folder

        Only call this if :meth:`is_paper_content_add_to_folder` is true.

        :rtype: PaperContentAddToFolderType
        """
        if not self.is_paper_content_add_to_folder():
            raise AttributeError("tag 'paper_content_add_to_folder' not set")
        return self._value

    def get_paper_content_archive(self):
        """
        (paper) Archived Paper doc/folder

        Only call this if :meth:`is_paper_content_archive` is true.

        :rtype: PaperContentArchiveType
        """
        if not self.is_paper_content_archive():
            raise AttributeError("tag 'paper_content_archive' not set")
        return self._value

    def get_paper_content_create(self):
        """
        (paper) Created Paper doc/folder

        Only call this if :meth:`is_paper_content_create` is true.

        :rtype: PaperContentCreateType
        """
        if not self.is_paper_content_create():
            raise AttributeError("tag 'paper_content_create' not set")
        return self._value

    def get_paper_content_permanently_delete(self):
        """
        (paper) Permanently deleted Paper doc/folder

        Only call this if :meth:`is_paper_content_permanently_delete` is true.

        :rtype: PaperContentPermanentlyDeleteType
        """
        if not self.is_paper_content_permanently_delete():
            raise AttributeError("tag 'paper_content_permanently_delete' not set")
        return self._value

    def get_paper_content_remove_from_folder(self):
        """
        (paper) Removed Paper doc/folder from folder

        Only call this if :meth:`is_paper_content_remove_from_folder` is true.

        :rtype: PaperContentRemoveFromFolderType
        """
        if not self.is_paper_content_remove_from_folder():
            raise AttributeError("tag 'paper_content_remove_from_folder' not set")
        return self._value

    def get_paper_content_remove_member(self):
        """
        (paper) Removed users and/or groups from Paper doc/folder

        Only call this if :meth:`is_paper_content_remove_member` is true.

        :rtype: PaperContentRemoveMemberType
        """
        if not self.is_paper_content_remove_member():
            raise AttributeError("tag 'paper_content_remove_member' not set")
        return self._value

    def get_paper_content_rename(self):
        """
        (paper) Renamed Paper doc/folder

        Only call this if :meth:`is_paper_content_rename` is true.

        :rtype: PaperContentRenameType
        """
        if not self.is_paper_content_rename():
            raise AttributeError("tag 'paper_content_rename' not set")
        return self._value

    def get_paper_content_restore(self):
        """
        (paper) Restored archived Paper doc/folder

        Only call this if :meth:`is_paper_content_restore` is true.

        :rtype: PaperContentRestoreType
        """
        if not self.is_paper_content_restore():
            raise AttributeError("tag 'paper_content_restore' not set")
        return self._value

    def get_paper_doc_add_comment(self):
        """
        (paper) Added Paper doc comment

        Only call this if :meth:`is_paper_doc_add_comment` is true.

        :rtype: PaperDocAddCommentType
        """
        if not self.is_paper_doc_add_comment():
            raise AttributeError("tag 'paper_doc_add_comment' not set")
        return self._value

    def get_paper_doc_change_member_role(self):
        """
        (paper) Changed member permissions for Paper doc

        Only call this if :meth:`is_paper_doc_change_member_role` is true.

        :rtype: PaperDocChangeMemberRoleType
        """
        if not self.is_paper_doc_change_member_role():
            raise AttributeError("tag 'paper_doc_change_member_role' not set")
        return self._value

    def get_paper_doc_change_sharing_policy(self):
        """
        (paper) Changed sharing setting for Paper doc

        Only call this if :meth:`is_paper_doc_change_sharing_policy` is true.

        :rtype: PaperDocChangeSharingPolicyType
        """
        if not self.is_paper_doc_change_sharing_policy():
            raise AttributeError("tag 'paper_doc_change_sharing_policy' not set")
        return self._value

    def get_paper_doc_change_subscription(self):
        """
        (paper) Followed/unfollowed Paper doc

        Only call this if :meth:`is_paper_doc_change_subscription` is true.

        :rtype: PaperDocChangeSubscriptionType
        """
        if not self.is_paper_doc_change_subscription():
            raise AttributeError("tag 'paper_doc_change_subscription' not set")
        return self._value

    def get_paper_doc_deleted(self):
        """
        (paper) Archived Paper doc (deprecated, no longer logged)

        Only call this if :meth:`is_paper_doc_deleted` is true.

        :rtype: PaperDocDeletedType
        """
        if not self.is_paper_doc_deleted():
            raise AttributeError("tag 'paper_doc_deleted' not set")
        return self._value

    def get_paper_doc_delete_comment(self):
        """
        (paper) Deleted Paper doc comment

        Only call this if :meth:`is_paper_doc_delete_comment` is true.

        :rtype: PaperDocDeleteCommentType
        """
        if not self.is_paper_doc_delete_comment():
            raise AttributeError("tag 'paper_doc_delete_comment' not set")
        return self._value

    def get_paper_doc_download(self):
        """
        (paper) Downloaded Paper doc in specific format

        Only call this if :meth:`is_paper_doc_download` is true.

        :rtype: PaperDocDownloadType
        """
        if not self.is_paper_doc_download():
            raise AttributeError("tag 'paper_doc_download' not set")
        return self._value

    def get_paper_doc_edit(self):
        """
        (paper) Edited Paper doc

        Only call this if :meth:`is_paper_doc_edit` is true.

        :rtype: PaperDocEditType
        """
        if not self.is_paper_doc_edit():
            raise AttributeError("tag 'paper_doc_edit' not set")
        return self._value

    def get_paper_doc_edit_comment(self):
        """
        (paper) Edited Paper doc comment

        Only call this if :meth:`is_paper_doc_edit_comment` is true.

        :rtype: PaperDocEditCommentType
        """
        if not self.is_paper_doc_edit_comment():
            raise AttributeError("tag 'paper_doc_edit_comment' not set")
        return self._value

    def get_paper_doc_followed(self):
        """
        (paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed
        Paper doc')

        Only call this if :meth:`is_paper_doc_followed` is true.

        :rtype: PaperDocFollowedType
        """
        if not self.is_paper_doc_followed():
            raise AttributeError("tag 'paper_doc_followed' not set")
        return self._value

    def get_paper_doc_mention(self):
        """
        (paper) Mentioned user in Paper doc

        Only call this if :meth:`is_paper_doc_mention` is true.

        :rtype: PaperDocMentionType
        """
        if not self.is_paper_doc_mention():
            raise AttributeError("tag 'paper_doc_mention' not set")
        return self._value

    def get_paper_doc_ownership_changed(self):
        """
        (paper) Transferred ownership of Paper doc

        Only call this if :meth:`is_paper_doc_ownership_changed` is true.

        :rtype: PaperDocOwnershipChangedType
        """
        if not self.is_paper_doc_ownership_changed():
            raise AttributeError("tag 'paper_doc_ownership_changed' not set")
        return self._value

    def get_paper_doc_request_access(self):
        """
        (paper) Requested access to Paper doc

        Only call this if :meth:`is_paper_doc_request_access` is true.

        :rtype: PaperDocRequestAccessType
        """
        if not self.is_paper_doc_request_access():
            raise AttributeError("tag 'paper_doc_request_access' not set")
        return self._value

    def get_paper_doc_resolve_comment(self):
        """
        (paper) Resolved Paper doc comment

        Only call this if :meth:`is_paper_doc_resolve_comment` is true.

        :rtype: PaperDocResolveCommentType
        """
        if not self.is_paper_doc_resolve_comment():
            raise AttributeError("tag 'paper_doc_resolve_comment' not set")
        return self._value

    def get_paper_doc_revert(self):
        """
        (paper) Restored Paper doc to previous version

        Only call this if :meth:`is_paper_doc_revert` is true.

        :rtype: PaperDocRevertType
        """
        if not self.is_paper_doc_revert():
            raise AttributeError("tag 'paper_doc_revert' not set")
        return self._value

    def get_paper_doc_slack_share(self):
        """
        (paper) Shared Paper doc via Slack

        Only call this if :meth:`is_paper_doc_slack_share` is true.

        :rtype: PaperDocSlackShareType
        """
        if not self.is_paper_doc_slack_share():
            raise AttributeError("tag 'paper_doc_slack_share' not set")
        return self._value

    def get_paper_doc_team_invite(self):
        """
        (paper) Shared Paper doc with users and/or groups (deprecated, no longer
        logged)

        Only call this if :meth:`is_paper_doc_team_invite` is true.

        :rtype: PaperDocTeamInviteType
        """
        if not self.is_paper_doc_team_invite():
            raise AttributeError("tag 'paper_doc_team_invite' not set")
        return self._value

    def get_paper_doc_trashed(self):
        """
        (paper) Deleted Paper doc

        Only call this if :meth:`is_paper_doc_trashed` is true.

        :rtype: PaperDocTrashedType
        """
        if not self.is_paper_doc_trashed():
            raise AttributeError("tag 'paper_doc_trashed' not set")
        return self._value

    def get_paper_doc_unresolve_comment(self):
        """
        (paper) Unresolved Paper doc comment

        Only call this if :meth:`is_paper_doc_unresolve_comment` is true.

        :rtype: PaperDocUnresolveCommentType
        """
        if not self.is_paper_doc_unresolve_comment():
            raise AttributeError("tag 'paper_doc_unresolve_comment' not set")
        return self._value

    def get_paper_doc_untrashed(self):
        """
        (paper) Restored Paper doc

        Only call this if :meth:`is_paper_doc_untrashed` is true.

        :rtype: PaperDocUntrashedType
        """
        if not self.is_paper_doc_untrashed():
            raise AttributeError("tag 'paper_doc_untrashed' not set")
        return self._value

    def get_paper_doc_view(self):
        """
        (paper) Viewed Paper doc

        Only call this if :meth:`is_paper_doc_view` is true.

        :rtype: PaperDocViewType
        """
        if not self.is_paper_doc_view():
            raise AttributeError("tag 'paper_doc_view' not set")
        return self._value

    def get_paper_external_view_allow(self):
        """
        (paper) Changed Paper external sharing setting to anyone (deprecated, no
        longer logged)

        Only call this if :meth:`is_paper_external_view_allow` is true.

        :rtype: PaperExternalViewAllowType
        """
        if not self.is_paper_external_view_allow():
            raise AttributeError("tag 'paper_external_view_allow' not set")
        return self._value

    def get_paper_external_view_default_team(self):
        """
        (paper) Changed Paper external sharing setting to default team
        (deprecated, no longer logged)

        Only call this if :meth:`is_paper_external_view_default_team` is true.

        :rtype: PaperExternalViewDefaultTeamType
        """
        if not self.is_paper_external_view_default_team():
            raise AttributeError("tag 'paper_external_view_default_team' not set")
        return self._value

    def get_paper_external_view_forbid(self):
        """
        (paper) Changed Paper external sharing setting to team-only (deprecated,
        no longer logged)

        Only call this if :meth:`is_paper_external_view_forbid` is true.

        :rtype: PaperExternalViewForbidType
        """
        if not self.is_paper_external_view_forbid():
            raise AttributeError("tag 'paper_external_view_forbid' not set")
        return self._value

    def get_paper_folder_change_subscription(self):
        """
        (paper) Followed/unfollowed Paper folder

        Only call this if :meth:`is_paper_folder_change_subscription` is true.

        :rtype: PaperFolderChangeSubscriptionType
        """
        if not self.is_paper_folder_change_subscription():
            raise AttributeError("tag 'paper_folder_change_subscription' not set")
        return self._value

    def get_paper_folder_deleted(self):
        """
        (paper) Archived Paper folder (deprecated, no longer logged)

        Only call this if :meth:`is_paper_folder_deleted` is true.

        :rtype: PaperFolderDeletedType
        """
        if not self.is_paper_folder_deleted():
            raise AttributeError("tag 'paper_folder_deleted' not set")
        return self._value

    def get_paper_folder_followed(self):
        """
        (paper) Followed Paper folder (deprecated, replaced by
        'Followed/unfollowed Paper folder')

        Only call this if :meth:`is_paper_folder_followed` is true.

        :rtype: PaperFolderFollowedType
        """
        if not self.is_paper_folder_followed():
            raise AttributeError("tag 'paper_folder_followed' not set")
        return self._value

    def get_paper_folder_team_invite(self):
        """
        (paper) Shared Paper folder with users and/or groups (deprecated, no
        longer logged)

        Only call this if :meth:`is_paper_folder_team_invite` is true.

        :rtype: PaperFolderTeamInviteType
        """
        if not self.is_paper_folder_team_invite():
            raise AttributeError("tag 'paper_folder_team_invite' not set")
        return self._value

    def get_paper_published_link_change_permission(self):
        """
        (paper) Changed permissions for published doc

        Only call this if :meth:`is_paper_published_link_change_permission` is true.

        :rtype: PaperPublishedLinkChangePermissionType
        """
        if not self.is_paper_published_link_change_permission():
            raise AttributeError("tag 'paper_published_link_change_permission' not set")
        return self._value

    def get_paper_published_link_create(self):
        """
        (paper) Published doc

        Only call this if :meth:`is_paper_published_link_create` is true.

        :rtype: PaperPublishedLinkCreateType
        """
        if not self.is_paper_published_link_create():
            raise AttributeError("tag 'paper_published_link_create' not set")
        return self._value

    def get_paper_published_link_disabled(self):
        """
        (paper) Unpublished doc

        Only call this if :meth:`is_paper_published_link_disabled` is true.

        :rtype: PaperPublishedLinkDisabledType
        """
        if not self.is_paper_published_link_disabled():
            raise AttributeError("tag 'paper_published_link_disabled' not set")
        return self._value

    def get_paper_published_link_view(self):
        """
        (paper) Viewed published doc

        Only call this if :meth:`is_paper_published_link_view` is true.

        :rtype: PaperPublishedLinkViewType
        """
        if not self.is_paper_published_link_view():
            raise AttributeError("tag 'paper_published_link_view' not set")
        return self._value

    def get_password_change(self):
        """
        (passwords) Changed password

        Only call this if :meth:`is_password_change` is true.

        :rtype: PasswordChangeType
        """
        if not self.is_password_change():
            raise AttributeError("tag 'password_change' not set")
        return self._value

    def get_password_reset(self):
        """
        (passwords) Reset password

        Only call this if :meth:`is_password_reset` is true.

        :rtype: PasswordResetType
        """
        if not self.is_password_reset():
            raise AttributeError("tag 'password_reset' not set")
        return self._value

    def get_password_reset_all(self):
        """
        (passwords) Reset all team member passwords

        Only call this if :meth:`is_password_reset_all` is true.

        :rtype: PasswordResetAllType
        """
        if not self.is_password_reset_all():
            raise AttributeError("tag 'password_reset_all' not set")
        return self._value

    def get_classification_create_report(self):
        """
        (reports) Created Classification report

        Only call this if :meth:`is_classification_create_report` is true.

        :rtype: ClassificationCreateReportType
        """
        if not self.is_classification_create_report():
            raise AttributeError("tag 'classification_create_report' not set")
        return self._value

    def get_classification_create_report_fail(self):
        """
        (reports) Couldn't create Classification report

        Only call this if :meth:`is_classification_create_report_fail` is true.

        :rtype: ClassificationCreateReportFailType
        """
        if not self.is_classification_create_report_fail():
            raise AttributeError("tag 'classification_create_report_fail' not set")
        return self._value

    def get_emm_create_exceptions_report(self):
        """
        (reports) Created EMM-excluded users report

        Only call this if :meth:`is_emm_create_exceptions_report` is true.

        :rtype: EmmCreateExceptionsReportType
        """
        if not self.is_emm_create_exceptions_report():
            raise AttributeError("tag 'emm_create_exceptions_report' not set")
        return self._value

    def get_emm_create_usage_report(self):
        """
        (reports) Created EMM mobile app usage report

        Only call this if :meth:`is_emm_create_usage_report` is true.

        :rtype: EmmCreateUsageReportType
        """
        if not self.is_emm_create_usage_report():
            raise AttributeError("tag 'emm_create_usage_report' not set")
        return self._value

    def get_export_members_report(self):
        """
        (reports) Created member data report

        Only call this if :meth:`is_export_members_report` is true.

        :rtype: ExportMembersReportType
        """
        if not self.is_export_members_report():
            raise AttributeError("tag 'export_members_report' not set")
        return self._value

    def get_export_members_report_fail(self):
        """
        (reports) Failed to create members data report

        Only call this if :meth:`is_export_members_report_fail` is true.

        :rtype: ExportMembersReportFailType
        """
        if not self.is_export_members_report_fail():
            raise AttributeError("tag 'export_members_report_fail' not set")
        return self._value

    def get_external_sharing_create_report(self):
        """
        (reports) Created External sharing report

        Only call this if :meth:`is_external_sharing_create_report` is true.

        :rtype: ExternalSharingCreateReportType
        """
        if not self.is_external_sharing_create_report():
            raise AttributeError("tag 'external_sharing_create_report' not set")
        return self._value

    def get_external_sharing_report_failed(self):
        """
        (reports) Couldn't create External sharing report

        Only call this if :meth:`is_external_sharing_report_failed` is true.

        :rtype: ExternalSharingReportFailedType
        """
        if not self.is_external_sharing_report_failed():
            raise AttributeError("tag 'external_sharing_report_failed' not set")
        return self._value

    def get_no_expiration_link_gen_create_report(self):
        """
        (reports) Report created: Links created with no expiration

        Only call this if :meth:`is_no_expiration_link_gen_create_report` is true.

        :rtype: NoExpirationLinkGenCreateReportType
        """
        if not self.is_no_expiration_link_gen_create_report():
            raise AttributeError("tag 'no_expiration_link_gen_create_report' not set")
        return self._value

    def get_no_expiration_link_gen_report_failed(self):
        """
        (reports) Couldn't create report: Links created with no expiration

        Only call this if :meth:`is_no_expiration_link_gen_report_failed` is true.

        :rtype: NoExpirationLinkGenReportFailedType
        """
        if not self.is_no_expiration_link_gen_report_failed():
            raise AttributeError("tag 'no_expiration_link_gen_report_failed' not set")
        return self._value

    def get_no_password_link_gen_create_report(self):
        """
        (reports) Report created: Links created without passwords

        Only call this if :meth:`is_no_password_link_gen_create_report` is true.

        :rtype: NoPasswordLinkGenCreateReportType
        """
        if not self.is_no_password_link_gen_create_report():
            raise AttributeError("tag 'no_password_link_gen_create_report' not set")
        return self._value

    def get_no_password_link_gen_report_failed(self):
        """
        (reports) Couldn't create report: Links created without passwords

        Only call this if :meth:`is_no_password_link_gen_report_failed` is true.

        :rtype: NoPasswordLinkGenReportFailedType
        """
        if not self.is_no_password_link_gen_report_failed():
            raise AttributeError("tag 'no_password_link_gen_report_failed' not set")
        return self._value

    def get_no_password_link_view_create_report(self):
        """
        (reports) Report created: Views of links without passwords

        Only call this if :meth:`is_no_password_link_view_create_report` is true.

        :rtype: NoPasswordLinkViewCreateReportType
        """
        if not self.is_no_password_link_view_create_report():
            raise AttributeError("tag 'no_password_link_view_create_report' not set")
        return self._value

    def get_no_password_link_view_report_failed(self):
        """
        (reports) Couldn't create report: Views of links without passwords

        Only call this if :meth:`is_no_password_link_view_report_failed` is true.

        :rtype: NoPasswordLinkViewReportFailedType
        """
        if not self.is_no_password_link_view_report_failed():
            raise AttributeError("tag 'no_password_link_view_report_failed' not set")
        return self._value

    def get_outdated_link_view_create_report(self):
        """
        (reports) Report created: Views of old links

        Only call this if :meth:`is_outdated_link_view_create_report` is true.

        :rtype: OutdatedLinkViewCreateReportType
        """
        if not self.is_outdated_link_view_create_report():
            raise AttributeError("tag 'outdated_link_view_create_report' not set")
        return self._value

    def get_outdated_link_view_report_failed(self):
        """
        (reports) Couldn't create report: Views of old links

        Only call this if :meth:`is_outdated_link_view_report_failed` is true.

        :rtype: OutdatedLinkViewReportFailedType
        """
        if not self.is_outdated_link_view_report_failed():
            raise AttributeError("tag 'outdated_link_view_report_failed' not set")
        return self._value

    def get_paper_admin_export_start(self):
        """
        (reports) Exported all team Paper docs

        Only call this if :meth:`is_paper_admin_export_start` is true.

        :rtype: PaperAdminExportStartType
        """
        if not self.is_paper_admin_export_start():
            raise AttributeError("tag 'paper_admin_export_start' not set")
        return self._value

    def get_smart_sync_create_admin_privilege_report(self):
        """
        (reports) Created Smart Sync non-admin devices report

        Only call this if :meth:`is_smart_sync_create_admin_privilege_report` is true.

        :rtype: SmartSyncCreateAdminPrivilegeReportType
        """
        if not self.is_smart_sync_create_admin_privilege_report():
            raise AttributeError("tag 'smart_sync_create_admin_privilege_report' not set")
        return self._value

    def get_team_activity_create_report(self):
        """
        (reports) Created team activity report

        Only call this if :meth:`is_team_activity_create_report` is true.

        :rtype: TeamActivityCreateReportType
        """
        if not self.is_team_activity_create_report():
            raise AttributeError("tag 'team_activity_create_report' not set")
        return self._value

    def get_team_activity_create_report_fail(self):
        """
        (reports) Couldn't generate team activity report

        Only call this if :meth:`is_team_activity_create_report_fail` is true.

        :rtype: TeamActivityCreateReportFailType
        """
        if not self.is_team_activity_create_report_fail():
            raise AttributeError("tag 'team_activity_create_report_fail' not set")
        return self._value

    def get_collection_share(self):
        """
        (sharing) Shared album

        Only call this if :meth:`is_collection_share` is true.

        :rtype: CollectionShareType
        """
        if not self.is_collection_share():
            raise AttributeError("tag 'collection_share' not set")
        return self._value

    def get_file_transfers_file_add(self):
        """
        (sharing) Transfer files added

        Only call this if :meth:`is_file_transfers_file_add` is true.

        :rtype: FileTransfersFileAddType
        """
        if not self.is_file_transfers_file_add():
            raise AttributeError("tag 'file_transfers_file_add' not set")
        return self._value

    def get_file_transfers_transfer_delete(self):
        """
        (sharing) Deleted transfer

        Only call this if :meth:`is_file_transfers_transfer_delete` is true.

        :rtype: FileTransfersTransferDeleteType
        """
        if not self.is_file_transfers_transfer_delete():
            raise AttributeError("tag 'file_transfers_transfer_delete' not set")
        return self._value

    def get_file_transfers_transfer_download(self):
        """
        (sharing) Transfer downloaded

        Only call this if :meth:`is_file_transfers_transfer_download` is true.

        :rtype: FileTransfersTransferDownloadType
        """
        if not self.is_file_transfers_transfer_download():
            raise AttributeError("tag 'file_transfers_transfer_download' not set")
        return self._value

    def get_file_transfers_transfer_send(self):
        """
        (sharing) Sent transfer

        Only call this if :meth:`is_file_transfers_transfer_send` is true.

        :rtype: FileTransfersTransferSendType
        """
        if not self.is_file_transfers_transfer_send():
            raise AttributeError("tag 'file_transfers_transfer_send' not set")
        return self._value

    def get_file_transfers_transfer_view(self):
        """
        (sharing) Viewed transfer

        Only call this if :meth:`is_file_transfers_transfer_view` is true.

        :rtype: FileTransfersTransferViewType
        """
        if not self.is_file_transfers_transfer_view():
            raise AttributeError("tag 'file_transfers_transfer_view' not set")
        return self._value

    def get_note_acl_invite_only(self):
        """
        (sharing) Changed Paper doc to invite-only (deprecated, no longer
        logged)

        Only call this if :meth:`is_note_acl_invite_only` is true.

        :rtype: NoteAclInviteOnlyType
        """
        if not self.is_note_acl_invite_only():
            raise AttributeError("tag 'note_acl_invite_only' not set")
        return self._value

    def get_note_acl_link(self):
        """
        (sharing) Changed Paper doc to link-accessible (deprecated, no longer
        logged)

        Only call this if :meth:`is_note_acl_link` is true.

        :rtype: NoteAclLinkType
        """
        if not self.is_note_acl_link():
            raise AttributeError("tag 'note_acl_link' not set")
        return self._value

    def get_note_acl_team_link(self):
        """
        (sharing) Changed Paper doc to link-accessible for team (deprecated, no
        longer logged)

        Only call this if :meth:`is_note_acl_team_link` is true.

        :rtype: NoteAclTeamLinkType
        """
        if not self.is_note_acl_team_link():
            raise AttributeError("tag 'note_acl_team_link' not set")
        return self._value

    def get_note_shared(self):
        """
        (sharing) Shared Paper doc (deprecated, no longer logged)

        Only call this if :meth:`is_note_shared` is true.

        :rtype: NoteSharedType
        """
        if not self.is_note_shared():
            raise AttributeError("tag 'note_shared' not set")
        return self._value

    def get_note_share_receive(self):
        """
        (sharing) Shared received Paper doc (deprecated, no longer logged)

        Only call this if :meth:`is_note_share_receive` is true.

        :rtype: NoteShareReceiveType
        """
        if not self.is_note_share_receive():
            raise AttributeError("tag 'note_share_receive' not set")
        return self._value

    def get_open_note_shared(self):
        """
        (sharing) Opened shared Paper doc (deprecated, no longer logged)

        Only call this if :meth:`is_open_note_shared` is true.

        :rtype: OpenNoteSharedType
        """
        if not self.is_open_note_shared():
            raise AttributeError("tag 'open_note_shared' not set")
        return self._value

    def get_sf_add_group(self):
        """
        (sharing) Added team to shared folder (deprecated, no longer logged)

        Only call this if :meth:`is_sf_add_group` is true.

        :rtype: SfAddGroupType
        """
        if not self.is_sf_add_group():
            raise AttributeError("tag 'sf_add_group' not set")
        return self._value

    def get_sf_allow_non_members_to_view_shared_links(self):
        """
        (sharing) Allowed non-collaborators to view links to files in shared
        folder (deprecated, no longer logged)

        Only call this if :meth:`is_sf_allow_non_members_to_view_shared_links` is true.

        :rtype: SfAllowNonMembersToViewSharedLinksType
        """
        if not self.is_sf_allow_non_members_to_view_shared_links():
            raise AttributeError("tag 'sf_allow_non_members_to_view_shared_links' not set")
        return self._value

    def get_sf_external_invite_warn(self):
        """
        (sharing) Set team members to see warning before sharing folders outside
        team (deprecated, no longer logged)

        Only call this if :meth:`is_sf_external_invite_warn` is true.

        :rtype: SfExternalInviteWarnType
        """
        if not self.is_sf_external_invite_warn():
            raise AttributeError("tag 'sf_external_invite_warn' not set")
        return self._value

    def get_sf_fb_invite(self):
        """
        (sharing) Invited Facebook users to shared folder (deprecated, no longer
        logged)

        Only call this if :meth:`is_sf_fb_invite` is true.

        :rtype: SfFbInviteType
        """
        if not self.is_sf_fb_invite():
            raise AttributeError("tag 'sf_fb_invite' not set")
        return self._value

    def get_sf_fb_invite_change_role(self):
        """
        (sharing) Changed Facebook user's role in shared folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_sf_fb_invite_change_role` is true.

        :rtype: SfFbInviteChangeRoleType
        """
        if not self.is_sf_fb_invite_change_role():
            raise AttributeError("tag 'sf_fb_invite_change_role' not set")
        return self._value

    def get_sf_fb_uninvite(self):
        """
        (sharing) Uninvited Facebook user from shared folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_sf_fb_uninvite` is true.

        :rtype: SfFbUninviteType
        """
        if not self.is_sf_fb_uninvite():
            raise AttributeError("tag 'sf_fb_uninvite' not set")
        return self._value

    def get_sf_invite_group(self):
        """
        (sharing) Invited group to shared folder (deprecated, no longer logged)

        Only call this if :meth:`is_sf_invite_group` is true.

        :rtype: SfInviteGroupType
        """
        if not self.is_sf_invite_group():
            raise AttributeError("tag 'sf_invite_group' not set")
        return self._value

    def get_sf_team_grant_access(self):
        """
        (sharing) Granted access to shared folder (deprecated, no longer logged)

        Only call this if :meth:`is_sf_team_grant_access` is true.

        :rtype: SfTeamGrantAccessType
        """
        if not self.is_sf_team_grant_access():
            raise AttributeError("tag 'sf_team_grant_access' not set")
        return self._value

    def get_sf_team_invite(self):
        """
        (sharing) Invited team members to shared folder (deprecated, replaced by
        'Invited user to Dropbox and added them to shared file/folder')

        Only call this if :meth:`is_sf_team_invite` is true.

        :rtype: SfTeamInviteType
        """
        if not self.is_sf_team_invite():
            raise AttributeError("tag 'sf_team_invite' not set")
        return self._value

    def get_sf_team_invite_change_role(self):
        """
        (sharing) Changed team member's role in shared folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_sf_team_invite_change_role` is true.

        :rtype: SfTeamInviteChangeRoleType
        """
        if not self.is_sf_team_invite_change_role():
            raise AttributeError("tag 'sf_team_invite_change_role' not set")
        return self._value

    def get_sf_team_join(self):
        """
        (sharing) Joined team member's shared folder (deprecated, no longer
        logged)

        Only call this if :meth:`is_sf_team_join` is true.

        :rtype: SfTeamJoinType
        """
        if not self.is_sf_team_join():
            raise AttributeError("tag 'sf_team_join' not set")
        return self._value

    def get_sf_team_join_from_oob_link(self):
        """
        (sharing) Joined team member's shared folder from link (deprecated, no
        longer logged)

        Only call this if :meth:`is_sf_team_join_from_oob_link` is true.

        :rtype: SfTeamJoinFromOobLinkType
        """
        if not self.is_sf_team_join_from_oob_link():
            raise AttributeError("tag 'sf_team_join_from_oob_link' not set")
        return self._value

    def get_sf_team_uninvite(self):
        """
        (sharing) Unshared folder with team member (deprecated, replaced by
        'Removed invitee from shared file/folder before invite was accepted')

        Only call this if :meth:`is_sf_team_uninvite` is true.

        :rtype: SfTeamUninviteType
        """
        if not self.is_sf_team_uninvite():
            raise AttributeError("tag 'sf_team_uninvite' not set")
        return self._value

    def get_shared_content_add_invitees(self):
        """
        (sharing) Invited user to Dropbox and added them to shared file/folder

        Only call this if :meth:`is_shared_content_add_invitees` is true.

        :rtype: SharedContentAddInviteesType
        """
        if not self.is_shared_content_add_invitees():
            raise AttributeError("tag 'shared_content_add_invitees' not set")
        return self._value

    def get_shared_content_add_link_expiry(self):
        """
        (sharing) Added expiration date to link for shared file/folder
        (deprecated, no longer logged)

        Only call this if :meth:`is_shared_content_add_link_expiry` is true.

        :rtype: SharedContentAddLinkExpiryType
        """
        if not self.is_shared_content_add_link_expiry():
            raise AttributeError("tag 'shared_content_add_link_expiry' not set")
        return self._value

    def get_shared_content_add_link_password(self):
        """
        (sharing) Added password to link for shared file/folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_shared_content_add_link_password` is true.

        :rtype: SharedContentAddLinkPasswordType
        """
        if not self.is_shared_content_add_link_password():
            raise AttributeError("tag 'shared_content_add_link_password' not set")
        return self._value

    def get_shared_content_add_member(self):
        """
        (sharing) Added users and/or groups to shared file/folder

        Only call this if :meth:`is_shared_content_add_member` is true.

        :rtype: SharedContentAddMemberType
        """
        if not self.is_shared_content_add_member():
            raise AttributeError("tag 'shared_content_add_member' not set")
        return self._value

    def get_shared_content_change_downloads_policy(self):
        """
        (sharing) Changed whether members can download shared file/folder
        (deprecated, no longer logged)

        Only call this if :meth:`is_shared_content_change_downloads_policy` is true.

        :rtype: SharedContentChangeDownloadsPolicyType
        """
        if not self.is_shared_content_change_downloads_policy():
            raise AttributeError("tag 'shared_content_change_downloads_policy' not set")
        return self._value

    def get_shared_content_change_invitee_role(self):
        """
        (sharing) Changed access type of invitee to shared file/folder before
        invite was accepted

        Only call this if :meth:`is_shared_content_change_invitee_role` is true.

        :rtype: SharedContentChangeInviteeRoleType
        """
        if not self.is_shared_content_change_invitee_role():
            raise AttributeError("tag 'shared_content_change_invitee_role' not set")
        return self._value

    def get_shared_content_change_link_audience(self):
        """
        (sharing) Changed link audience of shared file/folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_shared_content_change_link_audience` is true.

        :rtype: SharedContentChangeLinkAudienceType
        """
        if not self.is_shared_content_change_link_audience():
            raise AttributeError("tag 'shared_content_change_link_audience' not set")
        return self._value

    def get_shared_content_change_link_expiry(self):
        """
        (sharing) Changed link expiration of shared file/folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_shared_content_change_link_expiry` is true.

        :rtype: SharedContentChangeLinkExpiryType
        """
        if not self.is_shared_content_change_link_expiry():
            raise AttributeError("tag 'shared_content_change_link_expiry' not set")
        return self._value

    def get_shared_content_change_link_password(self):
        """
        (sharing) Changed link password of shared file/folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_shared_content_change_link_password` is true.

        :rtype: SharedContentChangeLinkPasswordType
        """
        if not self.is_shared_content_change_link_password():
            raise AttributeError("tag 'shared_content_change_link_password' not set")
        return self._value

    def get_shared_content_change_member_role(self):
        """
        (sharing) Changed access type of shared file/folder member

        Only call this if :meth:`is_shared_content_change_member_role` is true.

        :rtype: SharedContentChangeMemberRoleType
        """
        if not self.is_shared_content_change_member_role():
            raise AttributeError("tag 'shared_content_change_member_role' not set")
        return self._value

    def get_shared_content_change_viewer_info_policy(self):
        """
        (sharing) Changed whether members can see who viewed shared file/folder

        Only call this if :meth:`is_shared_content_change_viewer_info_policy` is true.

        :rtype: SharedContentChangeViewerInfoPolicyType
        """
        if not self.is_shared_content_change_viewer_info_policy():
            raise AttributeError("tag 'shared_content_change_viewer_info_policy' not set")
        return self._value

    def get_shared_content_claim_invitation(self):
        """
        (sharing) Acquired membership of shared file/folder by accepting invite

        Only call this if :meth:`is_shared_content_claim_invitation` is true.

        :rtype: SharedContentClaimInvitationType
        """
        if not self.is_shared_content_claim_invitation():
            raise AttributeError("tag 'shared_content_claim_invitation' not set")
        return self._value

    def get_shared_content_copy(self):
        """
        (sharing) Copied shared file/folder to own Dropbox

        Only call this if :meth:`is_shared_content_copy` is true.

        :rtype: SharedContentCopyType
        """
        if not self.is_shared_content_copy():
            raise AttributeError("tag 'shared_content_copy' not set")
        return self._value

    def get_shared_content_download(self):
        """
        (sharing) Downloaded shared file/folder

        Only call this if :meth:`is_shared_content_download` is true.

        :rtype: SharedContentDownloadType
        """
        if not self.is_shared_content_download():
            raise AttributeError("tag 'shared_content_download' not set")
        return self._value

    def get_shared_content_relinquish_membership(self):
        """
        (sharing) Left shared file/folder

        Only call this if :meth:`is_shared_content_relinquish_membership` is true.

        :rtype: SharedContentRelinquishMembershipType
        """
        if not self.is_shared_content_relinquish_membership():
            raise AttributeError("tag 'shared_content_relinquish_membership' not set")
        return self._value

    def get_shared_content_remove_invitees(self):
        """
        (sharing) Removed invitee from shared file/folder before invite was
        accepted

        Only call this if :meth:`is_shared_content_remove_invitees` is true.

        :rtype: SharedContentRemoveInviteesType
        """
        if not self.is_shared_content_remove_invitees():
            raise AttributeError("tag 'shared_content_remove_invitees' not set")
        return self._value

    def get_shared_content_remove_link_expiry(self):
        """
        (sharing) Removed link expiration date of shared file/folder
        (deprecated, no longer logged)

        Only call this if :meth:`is_shared_content_remove_link_expiry` is true.

        :rtype: SharedContentRemoveLinkExpiryType
        """
        if not self.is_shared_content_remove_link_expiry():
            raise AttributeError("tag 'shared_content_remove_link_expiry' not set")
        return self._value

    def get_shared_content_remove_link_password(self):
        """
        (sharing) Removed link password of shared file/folder (deprecated, no
        longer logged)

        Only call this if :meth:`is_shared_content_remove_link_password` is true.

        :rtype: SharedContentRemoveLinkPasswordType
        """
        if not self.is_shared_content_remove_link_password():
            raise AttributeError("tag 'shared_content_remove_link_password' not set")
        return self._value

    def get_shared_content_remove_member(self):
        """
        (sharing) Removed user/group from shared file/folder

        Only call this if :meth:`is_shared_content_remove_member` is true.

        :rtype: SharedContentRemoveMemberType
        """
        if not self.is_shared_content_remove_member():
            raise AttributeError("tag 'shared_content_remove_member' not set")
        return self._value

    def get_shared_content_request_access(self):
        """
        (sharing) Requested access to shared file/folder

        Only call this if :meth:`is_shared_content_request_access` is true.

        :rtype: SharedContentRequestAccessType
        """
        if not self.is_shared_content_request_access():
            raise AttributeError("tag 'shared_content_request_access' not set")
        return self._value

    def get_shared_content_restore_invitees(self):
        """
        (sharing) Restored shared file/folder invitees

        Only call this if :meth:`is_shared_content_restore_invitees` is true.

        :rtype: SharedContentRestoreInviteesType
        """
        if not self.is_shared_content_restore_invitees():
            raise AttributeError("tag 'shared_content_restore_invitees' not set")
        return self._value

    def get_shared_content_restore_member(self):
        """
        (sharing) Restored users and/or groups to membership of shared
        file/folder

        Only call this if :meth:`is_shared_content_restore_member` is true.

        :rtype: SharedContentRestoreMemberType
        """
        if not self.is_shared_content_restore_member():
            raise AttributeError("tag 'shared_content_restore_member' not set")
        return self._value

    def get_shared_content_unshare(self):
        """
        (sharing) Unshared file/folder by clearing membership

        Only call this if :meth:`is_shared_content_unshare` is true.

        :rtype: SharedContentUnshareType
        """
        if not self.is_shared_content_unshare():
            raise AttributeError("tag 'shared_content_unshare' not set")
        return self._value

    def get_shared_content_view(self):
        """
        (sharing) Previewed shared file/folder

        Only call this if :meth:`is_shared_content_view` is true.

        :rtype: SharedContentViewType
        """
        if not self.is_shared_content_view():
            raise AttributeError("tag 'shared_content_view' not set")
        return self._value

    def get_shared_folder_change_link_policy(self):
        """
        (sharing) Changed who can access shared folder via link

        Only call this if :meth:`is_shared_folder_change_link_policy` is true.

        :rtype: SharedFolderChangeLinkPolicyType
        """
        if not self.is_shared_folder_change_link_policy():
            raise AttributeError("tag 'shared_folder_change_link_policy' not set")
        return self._value

    def get_shared_folder_change_members_inheritance_policy(self):
        """
        (sharing) Changed whether shared folder inherits members from parent
        folder

        Only call this if :meth:`is_shared_folder_change_members_inheritance_policy` is true.

        :rtype: SharedFolderChangeMembersInheritancePolicyType
        """
        if not self.is_shared_folder_change_members_inheritance_policy():
            raise AttributeError("tag 'shared_folder_change_members_inheritance_policy' not set")
        return self._value

    def get_shared_folder_change_members_management_policy(self):
        """
        (sharing) Changed who can add/remove members of shared folder

        Only call this if :meth:`is_shared_folder_change_members_management_policy` is true.

        :rtype: SharedFolderChangeMembersManagementPolicyType
        """
        if not self.is_shared_folder_change_members_management_policy():
            raise AttributeError("tag 'shared_folder_change_members_management_policy' not set")
        return self._value

    def get_shared_folder_change_members_policy(self):
        """
        (sharing) Changed who can become member of shared folder

        Only call this if :meth:`is_shared_folder_change_members_policy` is true.

        :rtype: SharedFolderChangeMembersPolicyType
        """
        if not self.is_shared_folder_change_members_policy():
            raise AttributeError("tag 'shared_folder_change_members_policy' not set")
        return self._value

    def get_shared_folder_create(self):
        """
        (sharing) Created shared folder

        Only call this if :meth:`is_shared_folder_create` is true.

        :rtype: SharedFolderCreateType
        """
        if not self.is_shared_folder_create():
            raise AttributeError("tag 'shared_folder_create' not set")
        return self._value

    def get_shared_folder_decline_invitation(self):
        """
        (sharing) Declined team member's invite to shared folder

        Only call this if :meth:`is_shared_folder_decline_invitation` is true.

        :rtype: SharedFolderDeclineInvitationType
        """
        if not self.is_shared_folder_decline_invitation():
            raise AttributeError("tag 'shared_folder_decline_invitation' not set")
        return self._value

    def get_shared_folder_mount(self):
        """
        (sharing) Added shared folder to own Dropbox

        Only call this if :meth:`is_shared_folder_mount` is true.

        :rtype: SharedFolderMountType
        """
        if not self.is_shared_folder_mount():
            raise AttributeError("tag 'shared_folder_mount' not set")
        return self._value

    def get_shared_folder_nest(self):
        """
        (sharing) Changed parent of shared folder

        Only call this if :meth:`is_shared_folder_nest` is true.

        :rtype: SharedFolderNestType
        """
        if not self.is_shared_folder_nest():
            raise AttributeError("tag 'shared_folder_nest' not set")
        return self._value

    def get_shared_folder_transfer_ownership(self):
        """
        (sharing) Transferred ownership of shared folder to another member

        Only call this if :meth:`is_shared_folder_transfer_ownership` is true.

        :rtype: SharedFolderTransferOwnershipType
        """
        if not self.is_shared_folder_transfer_ownership():
            raise AttributeError("tag 'shared_folder_transfer_ownership' not set")
        return self._value

    def get_shared_folder_unmount(self):
        """
        (sharing) Deleted shared folder from Dropbox

        Only call this if :meth:`is_shared_folder_unmount` is true.

        :rtype: SharedFolderUnmountType
        """
        if not self.is_shared_folder_unmount():
            raise AttributeError("tag 'shared_folder_unmount' not set")
        return self._value

    def get_shared_link_add_expiry(self):
        """
        (sharing) Added shared link expiration date

        Only call this if :meth:`is_shared_link_add_expiry` is true.

        :rtype: SharedLinkAddExpiryType
        """
        if not self.is_shared_link_add_expiry():
            raise AttributeError("tag 'shared_link_add_expiry' not set")
        return self._value

    def get_shared_link_change_expiry(self):
        """
        (sharing) Changed shared link expiration date

        Only call this if :meth:`is_shared_link_change_expiry` is true.

        :rtype: SharedLinkChangeExpiryType
        """
        if not self.is_shared_link_change_expiry():
            raise AttributeError("tag 'shared_link_change_expiry' not set")
        return self._value

    def get_shared_link_change_visibility(self):
        """
        (sharing) Changed visibility of shared link

        Only call this if :meth:`is_shared_link_change_visibility` is true.

        :rtype: SharedLinkChangeVisibilityType
        """
        if not self.is_shared_link_change_visibility():
            raise AttributeError("tag 'shared_link_change_visibility' not set")
        return self._value

    def get_shared_link_copy(self):
        """
        (sharing) Added file/folder to Dropbox from shared link

        Only call this if :meth:`is_shared_link_copy` is true.

        :rtype: SharedLinkCopyType
        """
        if not self.is_shared_link_copy():
            raise AttributeError("tag 'shared_link_copy' not set")
        return self._value

    def get_shared_link_create(self):
        """
        (sharing) Created shared link

        Only call this if :meth:`is_shared_link_create` is true.

        :rtype: SharedLinkCreateType
        """
        if not self.is_shared_link_create():
            raise AttributeError("tag 'shared_link_create' not set")
        return self._value

    def get_shared_link_disable(self):
        """
        (sharing) Removed shared link

        Only call this if :meth:`is_shared_link_disable` is true.

        :rtype: SharedLinkDisableType
        """
        if not self.is_shared_link_disable():
            raise AttributeError("tag 'shared_link_disable' not set")
        return self._value

    def get_shared_link_download(self):
        """
        (sharing) Downloaded file/folder from shared link

        Only call this if :meth:`is_shared_link_download` is true.

        :rtype: SharedLinkDownloadType
        """
        if not self.is_shared_link_download():
            raise AttributeError("tag 'shared_link_download' not set")
        return self._value

    def get_shared_link_remove_expiry(self):
        """
        (sharing) Removed shared link expiration date

        Only call this if :meth:`is_shared_link_remove_expiry` is true.

        :rtype: SharedLinkRemoveExpiryType
        """
        if not self.is_shared_link_remove_expiry():
            raise AttributeError("tag 'shared_link_remove_expiry' not set")
        return self._value

    def get_shared_link_settings_add_expiration(self):
        """
        (sharing) Added an expiration date to the shared link

        Only call this if :meth:`is_shared_link_settings_add_expiration` is true.

        :rtype: SharedLinkSettingsAddExpirationType
        """
        if not self.is_shared_link_settings_add_expiration():
            raise AttributeError("tag 'shared_link_settings_add_expiration' not set")
        return self._value

    def get_shared_link_settings_add_password(self):
        """
        (sharing) Added a password to the shared link

        Only call this if :meth:`is_shared_link_settings_add_password` is true.

        :rtype: SharedLinkSettingsAddPasswordType
        """
        if not self.is_shared_link_settings_add_password():
            raise AttributeError("tag 'shared_link_settings_add_password' not set")
        return self._value

    def get_shared_link_settings_allow_download_disabled(self):
        """
        (sharing) Disabled downloads

        Only call this if :meth:`is_shared_link_settings_allow_download_disabled` is true.

        :rtype: SharedLinkSettingsAllowDownloadDisabledType
        """
        if not self.is_shared_link_settings_allow_download_disabled():
            raise AttributeError("tag 'shared_link_settings_allow_download_disabled' not set")
        return self._value

    def get_shared_link_settings_allow_download_enabled(self):
        """
        (sharing) Enabled downloads

        Only call this if :meth:`is_shared_link_settings_allow_download_enabled` is true.

        :rtype: SharedLinkSettingsAllowDownloadEnabledType
        """
        if not self.is_shared_link_settings_allow_download_enabled():
            raise AttributeError("tag 'shared_link_settings_allow_download_enabled' not set")
        return self._value

    def get_shared_link_settings_change_audience(self):
        """
        (sharing) Changed the audience of the shared link

        Only call this if :meth:`is_shared_link_settings_change_audience` is true.

        :rtype: SharedLinkSettingsChangeAudienceType
        """
        if not self.is_shared_link_settings_change_audience():
            raise AttributeError("tag 'shared_link_settings_change_audience' not set")
        return self._value

    def get_shared_link_settings_change_expiration(self):
        """
        (sharing) Changed the expiration date of the shared link

        Only call this if :meth:`is_shared_link_settings_change_expiration` is true.

        :rtype: SharedLinkSettingsChangeExpirationType
        """
        if not self.is_shared_link_settings_change_expiration():
            raise AttributeError("tag 'shared_link_settings_change_expiration' not set")
        return self._value

    def get_shared_link_settings_change_password(self):
        """
        (sharing) Changed the password of the shared link

        Only call this if :meth:`is_shared_link_settings_change_password` is true.

        :rtype: SharedLinkSettingsChangePasswordType
        """
        if not self.is_shared_link_settings_change_password():
            raise AttributeError("tag 'shared_link_settings_change_password' not set")
        return self._value

    def get_shared_link_settings_remove_expiration(self):
        """
        (sharing) Removed the expiration date from the shared link

        Only call this if :meth:`is_shared_link_settings_remove_expiration` is true.

        :rtype: SharedLinkSettingsRemoveExpirationType
        """
        if not self.is_shared_link_settings_remove_expiration():
            raise AttributeError("tag 'shared_link_settings_remove_expiration' not set")
        return self._value

    def get_shared_link_settings_remove_password(self):
        """
        (sharing) Removed the password from the shared link

        Only call this if :meth:`is_shared_link_settings_remove_password` is true.

        :rtype: SharedLinkSettingsRemovePasswordType
        """
        if not self.is_shared_link_settings_remove_password():
            raise AttributeError("tag 'shared_link_settings_remove_password' not set")
        return self._value

    def get_shared_link_share(self):
        """
        (sharing) Added members as audience of shared link

        Only call this if :meth:`is_shared_link_share` is true.

        :rtype: SharedLinkShareType
        """
        if not self.is_shared_link_share():
            raise AttributeError("tag 'shared_link_share' not set")
        return self._value

    def get_shared_link_view(self):
        """
        (sharing) Opened shared link

        Only call this if :meth:`is_shared_link_view` is true.

        :rtype: SharedLinkViewType
        """
        if not self.is_shared_link_view():
            raise AttributeError("tag 'shared_link_view' not set")
        return self._value

    def get_shared_note_opened(self):
        """
        (sharing) Opened shared Paper doc (deprecated, no longer logged)

        Only call this if :meth:`is_shared_note_opened` is true.

        :rtype: SharedNoteOpenedType
        """
        if not self.is_shared_note_opened():
            raise AttributeError("tag 'shared_note_opened' not set")
        return self._value

    def get_shmodel_disable_downloads(self):
        """
        (sharing) Disabled downloads for link (deprecated, no longer logged)

        Only call this if :meth:`is_shmodel_disable_downloads` is true.

        :rtype: ShmodelDisableDownloadsType
        """
        if not self.is_shmodel_disable_downloads():
            raise AttributeError("tag 'shmodel_disable_downloads' not set")
        return self._value

    def get_shmodel_enable_downloads(self):
        """
        (sharing) Enabled downloads for link (deprecated, no longer logged)

        Only call this if :meth:`is_shmodel_enable_downloads` is true.

        :rtype: ShmodelEnableDownloadsType
        """
        if not self.is_shmodel_enable_downloads():
            raise AttributeError("tag 'shmodel_enable_downloads' not set")
        return self._value

    def get_shmodel_group_share(self):
        """
        (sharing) Shared link with group (deprecated, no longer logged)

        Only call this if :meth:`is_shmodel_group_share` is true.

        :rtype: ShmodelGroupShareType
        """
        if not self.is_shmodel_group_share():
            raise AttributeError("tag 'shmodel_group_share' not set")
        return self._value

    def get_showcase_access_granted(self):
        """
        (showcase) Granted access to showcase

        Only call this if :meth:`is_showcase_access_granted` is true.

        :rtype: ShowcaseAccessGrantedType
        """
        if not self.is_showcase_access_granted():
            raise AttributeError("tag 'showcase_access_granted' not set")
        return self._value

    def get_showcase_add_member(self):
        """
        (showcase) Added member to showcase

        Only call this if :meth:`is_showcase_add_member` is true.

        :rtype: ShowcaseAddMemberType
        """
        if not self.is_showcase_add_member():
            raise AttributeError("tag 'showcase_add_member' not set")
        return self._value

    def get_showcase_archived(self):
        """
        (showcase) Archived showcase

        Only call this if :meth:`is_showcase_archived` is true.

        :rtype: ShowcaseArchivedType
        """
        if not self.is_showcase_archived():
            raise AttributeError("tag 'showcase_archived' not set")
        return self._value

    def get_showcase_created(self):
        """
        (showcase) Created showcase

        Only call this if :meth:`is_showcase_created` is true.

        :rtype: ShowcaseCreatedType
        """
        if not self.is_showcase_created():
            raise AttributeError("tag 'showcase_created' not set")
        return self._value

    def get_showcase_delete_comment(self):
        """
        (showcase) Deleted showcase comment

        Only call this if :meth:`is_showcase_delete_comment` is true.

        :rtype: ShowcaseDeleteCommentType
        """
        if not self.is_showcase_delete_comment():
            raise AttributeError("tag 'showcase_delete_comment' not set")
        return self._value

    def get_showcase_edited(self):
        """
        (showcase) Edited showcase

        Only call this if :meth:`is_showcase_edited` is true.

        :rtype: ShowcaseEditedType
        """
        if not self.is_showcase_edited():
            raise AttributeError("tag 'showcase_edited' not set")
        return self._value

    def get_showcase_edit_comment(self):
        """
        (showcase) Edited showcase comment

        Only call this if :meth:`is_showcase_edit_comment` is true.

        :rtype: ShowcaseEditCommentType
        """
        if not self.is_showcase_edit_comment():
            raise AttributeError("tag 'showcase_edit_comment' not set")
        return self._value

    def get_showcase_file_added(self):
        """
        (showcase) Added file to showcase

        Only call this if :meth:`is_showcase_file_added` is true.

        :rtype: ShowcaseFileAddedType
        """
        if not self.is_showcase_file_added():
            raise AttributeError("tag 'showcase_file_added' not set")
        return self._value

    def get_showcase_file_download(self):
        """
        (showcase) Downloaded file from showcase

        Only call this if :meth:`is_showcase_file_download` is true.

        :rtype: ShowcaseFileDownloadType
        """
        if not self.is_showcase_file_download():
            raise AttributeError("tag 'showcase_file_download' not set")
        return self._value

    def get_showcase_file_removed(self):
        """
        (showcase) Removed file from showcase

        Only call this if :meth:`is_showcase_file_removed` is true.

        :rtype: ShowcaseFileRemovedType
        """
        if not self.is_showcase_file_removed():
            raise AttributeError("tag 'showcase_file_removed' not set")
        return self._value

    def get_showcase_file_view(self):
        """
        (showcase) Viewed file in showcase

        Only call this if :meth:`is_showcase_file_view` is true.

        :rtype: ShowcaseFileViewType
        """
        if not self.is_showcase_file_view():
            raise AttributeError("tag 'showcase_file_view' not set")
        return self._value

    def get_showcase_permanently_deleted(self):
        """
        (showcase) Permanently deleted showcase

        Only call this if :meth:`is_showcase_permanently_deleted` is true.

        :rtype: ShowcasePermanentlyDeletedType
        """
        if not self.is_showcase_permanently_deleted():
            raise AttributeError("tag 'showcase_permanently_deleted' not set")
        return self._value

    def get_showcase_post_comment(self):
        """
        (showcase) Added showcase comment

        Only call this if :meth:`is_showcase_post_comment` is true.

        :rtype: ShowcasePostCommentType
        """
        if not self.is_showcase_post_comment():
            raise AttributeError("tag 'showcase_post_comment' not set")
        return self._value

    def get_showcase_remove_member(self):
        """
        (showcase) Removed member from showcase

        Only call this if :meth:`is_showcase_remove_member` is true.

        :rtype: ShowcaseRemoveMemberType
        """
        if not self.is_showcase_remove_member():
            raise AttributeError("tag 'showcase_remove_member' not set")
        return self._value

    def get_showcase_renamed(self):
        """
        (showcase) Renamed showcase

        Only call this if :meth:`is_showcase_renamed` is true.

        :rtype: ShowcaseRenamedType
        """
        if not self.is_showcase_renamed():
            raise AttributeError("tag 'showcase_renamed' not set")
        return self._value

    def get_showcase_request_access(self):
        """
        (showcase) Requested access to showcase

        Only call this if :meth:`is_showcase_request_access` is true.

        :rtype: ShowcaseRequestAccessType
        """
        if not self.is_showcase_request_access():
            raise AttributeError("tag 'showcase_request_access' not set")
        return self._value

    def get_showcase_resolve_comment(self):
        """
        (showcase) Resolved showcase comment

        Only call this if :meth:`is_showcase_resolve_comment` is true.

        :rtype: ShowcaseResolveCommentType
        """
        if not self.is_showcase_resolve_comment():
            raise AttributeError("tag 'showcase_resolve_comment' not set")
        return self._value

    def get_showcase_restored(self):
        """
        (showcase) Unarchived showcase

        Only call this if :meth:`is_showcase_restored` is true.

        :rtype: ShowcaseRestoredType
        """
        if not self.is_showcase_restored():
            raise AttributeError("tag 'showcase_restored' not set")
        return self._value

    def get_showcase_trashed(self):
        """
        (showcase) Deleted showcase

        Only call this if :meth:`is_showcase_trashed` is true.

        :rtype: ShowcaseTrashedType
        """
        if not self.is_showcase_trashed():
            raise AttributeError("tag 'showcase_trashed' not set")
        return self._value

    def get_showcase_trashed_deprecated(self):
        """
        (showcase) Deleted showcase (old version) (deprecated, replaced by
        'Deleted showcase')

        Only call this if :meth:`is_showcase_trashed_deprecated` is true.

        :rtype: ShowcaseTrashedDeprecatedType
        """
        if not self.is_showcase_trashed_deprecated():
            raise AttributeError("tag 'showcase_trashed_deprecated' not set")
        return self._value

    def get_showcase_unresolve_comment(self):
        """
        (showcase) Unresolved showcase comment

        Only call this if :meth:`is_showcase_unresolve_comment` is true.

        :rtype: ShowcaseUnresolveCommentType
        """
        if not self.is_showcase_unresolve_comment():
            raise AttributeError("tag 'showcase_unresolve_comment' not set")
        return self._value

    def get_showcase_untrashed(self):
        """
        (showcase) Restored showcase

        Only call this if :meth:`is_showcase_untrashed` is true.

        :rtype: ShowcaseUntrashedType
        """
        if not self.is_showcase_untrashed():
            raise AttributeError("tag 'showcase_untrashed' not set")
        return self._value

    def get_showcase_untrashed_deprecated(self):
        """
        (showcase) Restored showcase (old version) (deprecated, replaced by
        'Restored showcase')

        Only call this if :meth:`is_showcase_untrashed_deprecated` is true.

        :rtype: ShowcaseUntrashedDeprecatedType
        """
        if not self.is_showcase_untrashed_deprecated():
            raise AttributeError("tag 'showcase_untrashed_deprecated' not set")
        return self._value

    def get_showcase_view(self):
        """
        (showcase) Viewed showcase

        Only call this if :meth:`is_showcase_view` is true.

        :rtype: ShowcaseViewType
        """
        if not self.is_showcase_view():
            raise AttributeError("tag 'showcase_view' not set")
        return self._value

    def get_sso_add_cert(self):
        """
        (sso) Added X.509 certificate for SSO

        Only call this if :meth:`is_sso_add_cert` is true.

        :rtype: SsoAddCertType
        """
        if not self.is_sso_add_cert():
            raise AttributeError("tag 'sso_add_cert' not set")
        return self._value

    def get_sso_add_login_url(self):
        """
        (sso) Added sign-in URL for SSO

        Only call this if :meth:`is_sso_add_login_url` is true.

        :rtype: SsoAddLoginUrlType
        """
        if not self.is_sso_add_login_url():
            raise AttributeError("tag 'sso_add_login_url' not set")
        return self._value

    def get_sso_add_logout_url(self):
        """
        (sso) Added sign-out URL for SSO

        Only call this if :meth:`is_sso_add_logout_url` is true.

        :rtype: SsoAddLogoutUrlType
        """
        if not self.is_sso_add_logout_url():
            raise AttributeError("tag 'sso_add_logout_url' not set")
        return self._value

    def get_sso_change_cert(self):
        """
        (sso) Changed X.509 certificate for SSO

        Only call this if :meth:`is_sso_change_cert` is true.

        :rtype: SsoChangeCertType
        """
        if not self.is_sso_change_cert():
            raise AttributeError("tag 'sso_change_cert' not set")
        return self._value

    def get_sso_change_login_url(self):
        """
        (sso) Changed sign-in URL for SSO

        Only call this if :meth:`is_sso_change_login_url` is true.

        :rtype: SsoChangeLoginUrlType
        """
        if not self.is_sso_change_login_url():
            raise AttributeError("tag 'sso_change_login_url' not set")
        return self._value

    def get_sso_change_logout_url(self):
        """
        (sso) Changed sign-out URL for SSO

        Only call this if :meth:`is_sso_change_logout_url` is true.

        :rtype: SsoChangeLogoutUrlType
        """
        if not self.is_sso_change_logout_url():
            raise AttributeError("tag 'sso_change_logout_url' not set")
        return self._value

    def get_sso_change_saml_identity_mode(self):
        """
        (sso) Changed SAML identity mode for SSO

        Only call this if :meth:`is_sso_change_saml_identity_mode` is true.

        :rtype: SsoChangeSamlIdentityModeType
        """
        if not self.is_sso_change_saml_identity_mode():
            raise AttributeError("tag 'sso_change_saml_identity_mode' not set")
        return self._value

    def get_sso_remove_cert(self):
        """
        (sso) Removed X.509 certificate for SSO

        Only call this if :meth:`is_sso_remove_cert` is true.

        :rtype: SsoRemoveCertType
        """
        if not self.is_sso_remove_cert():
            raise AttributeError("tag 'sso_remove_cert' not set")
        return self._value

    def get_sso_remove_login_url(self):
        """
        (sso) Removed sign-in URL for SSO

        Only call this if :meth:`is_sso_remove_login_url` is true.

        :rtype: SsoRemoveLoginUrlType
        """
        if not self.is_sso_remove_login_url():
            raise AttributeError("tag 'sso_remove_login_url' not set")
        return self._value

    def get_sso_remove_logout_url(self):
        """
        (sso) Removed sign-out URL for SSO

        Only call this if :meth:`is_sso_remove_logout_url` is true.

        :rtype: SsoRemoveLogoutUrlType
        """
        if not self.is_sso_remove_logout_url():
            raise AttributeError("tag 'sso_remove_logout_url' not set")
        return self._value

    def get_team_folder_change_status(self):
        """
        (team_folders) Changed archival status of team folder

        Only call this if :meth:`is_team_folder_change_status` is true.

        :rtype: TeamFolderChangeStatusType
        """
        if not self.is_team_folder_change_status():
            raise AttributeError("tag 'team_folder_change_status' not set")
        return self._value

    def get_team_folder_create(self):
        """
        (team_folders) Created team folder in active status

        Only call this if :meth:`is_team_folder_create` is true.

        :rtype: TeamFolderCreateType
        """
        if not self.is_team_folder_create():
            raise AttributeError("tag 'team_folder_create' not set")
        return self._value

    def get_team_folder_downgrade(self):
        """
        (team_folders) Downgraded team folder to regular shared folder

        Only call this if :meth:`is_team_folder_downgrade` is true.

        :rtype: TeamFolderDowngradeType
        """
        if not self.is_team_folder_downgrade():
            raise AttributeError("tag 'team_folder_downgrade' not set")
        return self._value

    def get_team_folder_permanently_delete(self):
        """
        (team_folders) Permanently deleted archived team folder

        Only call this if :meth:`is_team_folder_permanently_delete` is true.

        :rtype: TeamFolderPermanentlyDeleteType
        """
        if not self.is_team_folder_permanently_delete():
            raise AttributeError("tag 'team_folder_permanently_delete' not set")
        return self._value

    def get_team_folder_rename(self):
        """
        (team_folders) Renamed active/archived team folder

        Only call this if :meth:`is_team_folder_rename` is true.

        :rtype: TeamFolderRenameType
        """
        if not self.is_team_folder_rename():
            raise AttributeError("tag 'team_folder_rename' not set")
        return self._value

    def get_team_selective_sync_settings_changed(self):
        """
        (team_folders) Changed sync default

        Only call this if :meth:`is_team_selective_sync_settings_changed` is true.

        :rtype: TeamSelectiveSyncSettingsChangedType
        """
        if not self.is_team_selective_sync_settings_changed():
            raise AttributeError("tag 'team_selective_sync_settings_changed' not set")
        return self._value

    def get_account_capture_change_policy(self):
        """
        (team_policies) Changed account capture setting on team domain

        Only call this if :meth:`is_account_capture_change_policy` is true.

        :rtype: AccountCaptureChangePolicyType
        """
        if not self.is_account_capture_change_policy():
            raise AttributeError("tag 'account_capture_change_policy' not set")
        return self._value

    def get_admin_email_reminders_changed(self):
        """
        (team_policies) Changed admin reminder settings for requests to join the
        team

        Only call this if :meth:`is_admin_email_reminders_changed` is true.

        :rtype: AdminEmailRemindersChangedType
        """
        if not self.is_admin_email_reminders_changed():
            raise AttributeError("tag 'admin_email_reminders_changed' not set")
        return self._value

    def get_allow_download_disabled(self):
        """
        (team_policies) Disabled downloads (deprecated, no longer logged)

        Only call this if :meth:`is_allow_download_disabled` is true.

        :rtype: AllowDownloadDisabledType
        """
        if not self.is_allow_download_disabled():
            raise AttributeError("tag 'allow_download_disabled' not set")
        return self._value

    def get_allow_download_enabled(self):
        """
        (team_policies) Enabled downloads (deprecated, no longer logged)

        Only call this if :meth:`is_allow_download_enabled` is true.

        :rtype: AllowDownloadEnabledType
        """
        if not self.is_allow_download_enabled():
            raise AttributeError("tag 'allow_download_enabled' not set")
        return self._value

    def get_app_permissions_changed(self):
        """
        (team_policies) Changed app permissions

        Only call this if :meth:`is_app_permissions_changed` is true.

        :rtype: AppPermissionsChangedType
        """
        if not self.is_app_permissions_changed():
            raise AttributeError("tag 'app_permissions_changed' not set")
        return self._value

    def get_camera_uploads_policy_changed(self):
        """
        (team_policies) Changed camera uploads setting for team

        Only call this if :meth:`is_camera_uploads_policy_changed` is true.

        :rtype: CameraUploadsPolicyChangedType
        """
        if not self.is_camera_uploads_policy_changed():
            raise AttributeError("tag 'camera_uploads_policy_changed' not set")
        return self._value

    def get_capture_transcript_policy_changed(self):
        """
        (team_policies) Changed Capture transcription policy for team

        Only call this if :meth:`is_capture_transcript_policy_changed` is true.

        :rtype: CaptureTranscriptPolicyChangedType
        """
        if not self.is_capture_transcript_policy_changed():
            raise AttributeError("tag 'capture_transcript_policy_changed' not set")
        return self._value

    def get_classification_change_policy(self):
        """
        (team_policies) Changed classification policy for team

        Only call this if :meth:`is_classification_change_policy` is true.

        :rtype: ClassificationChangePolicyType
        """
        if not self.is_classification_change_policy():
            raise AttributeError("tag 'classification_change_policy' not set")
        return self._value

    def get_computer_backup_policy_changed(self):
        """
        (team_policies) Changed computer backup policy for team

        Only call this if :meth:`is_computer_backup_policy_changed` is true.

        :rtype: ComputerBackupPolicyChangedType
        """
        if not self.is_computer_backup_policy_changed():
            raise AttributeError("tag 'computer_backup_policy_changed' not set")
        return self._value

    def get_content_administration_policy_changed(self):
        """
        (team_policies) Changed content management setting

        Only call this if :meth:`is_content_administration_policy_changed` is true.

        :rtype: ContentAdministrationPolicyChangedType
        """
        if not self.is_content_administration_policy_changed():
            raise AttributeError("tag 'content_administration_policy_changed' not set")
        return self._value

    def get_data_placement_restriction_change_policy(self):
        """
        (team_policies) Set restrictions on data center locations where team
        data resides

        Only call this if :meth:`is_data_placement_restriction_change_policy` is true.

        :rtype: DataPlacementRestrictionChangePolicyType
        """
        if not self.is_data_placement_restriction_change_policy():
            raise AttributeError("tag 'data_placement_restriction_change_policy' not set")
        return self._value

    def get_data_placement_restriction_satisfy_policy(self):
        """
        (team_policies) Completed restrictions on data center locations where
        team data resides

        Only call this if :meth:`is_data_placement_restriction_satisfy_policy` is true.

        :rtype: DataPlacementRestrictionSatisfyPolicyType
        """
        if not self.is_data_placement_restriction_satisfy_policy():
            raise AttributeError("tag 'data_placement_restriction_satisfy_policy' not set")
        return self._value

    def get_device_approvals_add_exception(self):
        """
        (team_policies) Added members to device approvals exception list

        Only call this if :meth:`is_device_approvals_add_exception` is true.

        :rtype: DeviceApprovalsAddExceptionType
        """
        if not self.is_device_approvals_add_exception():
            raise AttributeError("tag 'device_approvals_add_exception' not set")
        return self._value

    def get_device_approvals_change_desktop_policy(self):
        """
        (team_policies) Set/removed limit on number of computers member can link
        to team Dropbox account

        Only call this if :meth:`is_device_approvals_change_desktop_policy` is true.

        :rtype: DeviceApprovalsChangeDesktopPolicyType
        """
        if not self.is_device_approvals_change_desktop_policy():
            raise AttributeError("tag 'device_approvals_change_desktop_policy' not set")
        return self._value

    def get_device_approvals_change_mobile_policy(self):
        """
        (team_policies) Set/removed limit on number of mobile devices member can
        link to team Dropbox account

        Only call this if :meth:`is_device_approvals_change_mobile_policy` is true.

        :rtype: DeviceApprovalsChangeMobilePolicyType
        """
        if not self.is_device_approvals_change_mobile_policy():
            raise AttributeError("tag 'device_approvals_change_mobile_policy' not set")
        return self._value

    def get_device_approvals_change_overage_action(self):
        """
        (team_policies) Changed device approvals setting when member is over
        limit

        Only call this if :meth:`is_device_approvals_change_overage_action` is true.

        :rtype: DeviceApprovalsChangeOverageActionType
        """
        if not self.is_device_approvals_change_overage_action():
            raise AttributeError("tag 'device_approvals_change_overage_action' not set")
        return self._value

    def get_device_approvals_change_unlink_action(self):
        """
        (team_policies) Changed device approvals setting when member unlinks
        approved device

        Only call this if :meth:`is_device_approvals_change_unlink_action` is true.

        :rtype: DeviceApprovalsChangeUnlinkActionType
        """
        if not self.is_device_approvals_change_unlink_action():
            raise AttributeError("tag 'device_approvals_change_unlink_action' not set")
        return self._value

    def get_device_approvals_remove_exception(self):
        """
        (team_policies) Removed members from device approvals exception list

        Only call this if :meth:`is_device_approvals_remove_exception` is true.

        :rtype: DeviceApprovalsRemoveExceptionType
        """
        if not self.is_device_approvals_remove_exception():
            raise AttributeError("tag 'device_approvals_remove_exception' not set")
        return self._value

    def get_directory_restrictions_add_members(self):
        """
        (team_policies) Added members to directory restrictions list

        Only call this if :meth:`is_directory_restrictions_add_members` is true.

        :rtype: DirectoryRestrictionsAddMembersType
        """
        if not self.is_directory_restrictions_add_members():
            raise AttributeError("tag 'directory_restrictions_add_members' not set")
        return self._value

    def get_directory_restrictions_remove_members(self):
        """
        (team_policies) Removed members from directory restrictions list

        Only call this if :meth:`is_directory_restrictions_remove_members` is true.

        :rtype: DirectoryRestrictionsRemoveMembersType
        """
        if not self.is_directory_restrictions_remove_members():
            raise AttributeError("tag 'directory_restrictions_remove_members' not set")
        return self._value

    def get_dropbox_passwords_policy_changed(self):
        """
        (team_policies) Changed Dropbox Passwords policy for team

        Only call this if :meth:`is_dropbox_passwords_policy_changed` is true.

        :rtype: DropboxPasswordsPolicyChangedType
        """
        if not self.is_dropbox_passwords_policy_changed():
            raise AttributeError("tag 'dropbox_passwords_policy_changed' not set")
        return self._value

    def get_email_ingest_policy_changed(self):
        """
        (team_policies) Changed email to Dropbox policy for team

        Only call this if :meth:`is_email_ingest_policy_changed` is true.

        :rtype: EmailIngestPolicyChangedType
        """
        if not self.is_email_ingest_policy_changed():
            raise AttributeError("tag 'email_ingest_policy_changed' not set")
        return self._value

    def get_emm_add_exception(self):
        """
        (team_policies) Added members to EMM exception list

        Only call this if :meth:`is_emm_add_exception` is true.

        :rtype: EmmAddExceptionType
        """
        if not self.is_emm_add_exception():
            raise AttributeError("tag 'emm_add_exception' not set")
        return self._value

    def get_emm_change_policy(self):
        """
        (team_policies) Enabled/disabled enterprise mobility management for
        members

        Only call this if :meth:`is_emm_change_policy` is true.

        :rtype: EmmChangePolicyType
        """
        if not self.is_emm_change_policy():
            raise AttributeError("tag 'emm_change_policy' not set")
        return self._value

    def get_emm_remove_exception(self):
        """
        (team_policies) Removed members from EMM exception list

        Only call this if :meth:`is_emm_remove_exception` is true.

        :rtype: EmmRemoveExceptionType
        """
        if not self.is_emm_remove_exception():
            raise AttributeError("tag 'emm_remove_exception' not set")
        return self._value

    def get_extended_version_history_change_policy(self):
        """
        (team_policies) Accepted/opted out of extended version history

        Only call this if :meth:`is_extended_version_history_change_policy` is true.

        :rtype: ExtendedVersionHistoryChangePolicyType
        """
        if not self.is_extended_version_history_change_policy():
            raise AttributeError("tag 'extended_version_history_change_policy' not set")
        return self._value

    def get_external_drive_backup_policy_changed(self):
        """
        (team_policies) Changed external drive backup policy for team

        Only call this if :meth:`is_external_drive_backup_policy_changed` is true.

        :rtype: ExternalDriveBackupPolicyChangedType
        """
        if not self.is_external_drive_backup_policy_changed():
            raise AttributeError("tag 'external_drive_backup_policy_changed' not set")
        return self._value

    def get_file_comments_change_policy(self):
        """
        (team_policies) Enabled/disabled commenting on team files

        Only call this if :meth:`is_file_comments_change_policy` is true.

        :rtype: FileCommentsChangePolicyType
        """
        if not self.is_file_comments_change_policy():
            raise AttributeError("tag 'file_comments_change_policy' not set")
        return self._value

    def get_file_locking_policy_changed(self):
        """
        (team_policies) Changed file locking policy for team

        Only call this if :meth:`is_file_locking_policy_changed` is true.

        :rtype: FileLockingPolicyChangedType
        """
        if not self.is_file_locking_policy_changed():
            raise AttributeError("tag 'file_locking_policy_changed' not set")
        return self._value

    def get_file_provider_migration_policy_changed(self):
        """
        (team_policies) Changed File Provider Migration policy for team

        Only call this if :meth:`is_file_provider_migration_policy_changed` is true.

        :rtype: FileProviderMigrationPolicyChangedType
        """
        if not self.is_file_provider_migration_policy_changed():
            raise AttributeError("tag 'file_provider_migration_policy_changed' not set")
        return self._value

    def get_file_requests_change_policy(self):
        """
        (team_policies) Enabled/disabled file requests

        Only call this if :meth:`is_file_requests_change_policy` is true.

        :rtype: FileRequestsChangePolicyType
        """
        if not self.is_file_requests_change_policy():
            raise AttributeError("tag 'file_requests_change_policy' not set")
        return self._value

    def get_file_requests_emails_enabled(self):
        """
        (team_policies) Enabled file request emails for everyone (deprecated, no
        longer logged)

        Only call this if :meth:`is_file_requests_emails_enabled` is true.

        :rtype: FileRequestsEmailsEnabledType
        """
        if not self.is_file_requests_emails_enabled():
            raise AttributeError("tag 'file_requests_emails_enabled' not set")
        return self._value

    def get_file_requests_emails_restricted_to_team_only(self):
        """
        (team_policies) Enabled file request emails for team (deprecated, no
        longer logged)

        Only call this if :meth:`is_file_requests_emails_restricted_to_team_only` is true.

        :rtype: FileRequestsEmailsRestrictedToTeamOnlyType
        """
        if not self.is_file_requests_emails_restricted_to_team_only():
            raise AttributeError("tag 'file_requests_emails_restricted_to_team_only' not set")
        return self._value

    def get_file_transfers_policy_changed(self):
        """
        (team_policies) Changed file transfers policy for team

        Only call this if :meth:`is_file_transfers_policy_changed` is true.

        :rtype: FileTransfersPolicyChangedType
        """
        if not self.is_file_transfers_policy_changed():
            raise AttributeError("tag 'file_transfers_policy_changed' not set")
        return self._value

    def get_folder_link_restriction_policy_changed(self):
        """
        (team_policies) Changed folder link restrictions policy for team

        Only call this if :meth:`is_folder_link_restriction_policy_changed` is true.

        :rtype: FolderLinkRestrictionPolicyChangedType
        """
        if not self.is_folder_link_restriction_policy_changed():
            raise AttributeError("tag 'folder_link_restriction_policy_changed' not set")
        return self._value

    def get_google_sso_change_policy(self):
        """
        (team_policies) Enabled/disabled Google single sign-on for team

        Only call this if :meth:`is_google_sso_change_policy` is true.

        :rtype: GoogleSsoChangePolicyType
        """
        if not self.is_google_sso_change_policy():
            raise AttributeError("tag 'google_sso_change_policy' not set")
        return self._value

    def get_group_user_management_change_policy(self):
        """
        (team_policies) Changed who can create groups

        Only call this if :meth:`is_group_user_management_change_policy` is true.

        :rtype: GroupUserManagementChangePolicyType
        """
        if not self.is_group_user_management_change_policy():
            raise AttributeError("tag 'group_user_management_change_policy' not set")
        return self._value

    def get_integration_policy_changed(self):
        """
        (team_policies) Changed integration policy for team

        Only call this if :meth:`is_integration_policy_changed` is true.

        :rtype: IntegrationPolicyChangedType
        """
        if not self.is_integration_policy_changed():
            raise AttributeError("tag 'integration_policy_changed' not set")
        return self._value

    def get_invite_acceptance_email_policy_changed(self):
        """
        (team_policies) Changed invite accept email policy for team

        Only call this if :meth:`is_invite_acceptance_email_policy_changed` is true.

        :rtype: InviteAcceptanceEmailPolicyChangedType
        """
        if not self.is_invite_acceptance_email_policy_changed():
            raise AttributeError("tag 'invite_acceptance_email_policy_changed' not set")
        return self._value

    def get_member_requests_change_policy(self):
        """
        (team_policies) Changed whether users can find team when not invited

        Only call this if :meth:`is_member_requests_change_policy` is true.

        :rtype: MemberRequestsChangePolicyType
        """
        if not self.is_member_requests_change_policy():
            raise AttributeError("tag 'member_requests_change_policy' not set")
        return self._value

    def get_member_send_invite_policy_changed(self):
        """
        (team_policies) Changed member send invite policy for team

        Only call this if :meth:`is_member_send_invite_policy_changed` is true.

        :rtype: MemberSendInvitePolicyChangedType
        """
        if not self.is_member_send_invite_policy_changed():
            raise AttributeError("tag 'member_send_invite_policy_changed' not set")
        return self._value

    def get_member_space_limits_add_exception(self):
        """
        (team_policies) Added members to member space limit exception list

        Only call this if :meth:`is_member_space_limits_add_exception` is true.

        :rtype: MemberSpaceLimitsAddExceptionType
        """
        if not self.is_member_space_limits_add_exception():
            raise AttributeError("tag 'member_space_limits_add_exception' not set")
        return self._value

    def get_member_space_limits_change_caps_type_policy(self):
        """
        (team_policies) Changed member space limit type for team

        Only call this if :meth:`is_member_space_limits_change_caps_type_policy` is true.

        :rtype: MemberSpaceLimitsChangeCapsTypePolicyType
        """
        if not self.is_member_space_limits_change_caps_type_policy():
            raise AttributeError("tag 'member_space_limits_change_caps_type_policy' not set")
        return self._value

    def get_member_space_limits_change_policy(self):
        """
        (team_policies) Changed team default member space limit

        Only call this if :meth:`is_member_space_limits_change_policy` is true.

        :rtype: MemberSpaceLimitsChangePolicyType
        """
        if not self.is_member_space_limits_change_policy():
            raise AttributeError("tag 'member_space_limits_change_policy' not set")
        return self._value

    def get_member_space_limits_remove_exception(self):
        """
        (team_policies) Removed members from member space limit exception list

        Only call this if :meth:`is_member_space_limits_remove_exception` is true.

        :rtype: MemberSpaceLimitsRemoveExceptionType
        """
        if not self.is_member_space_limits_remove_exception():
            raise AttributeError("tag 'member_space_limits_remove_exception' not set")
        return self._value

    def get_member_suggestions_change_policy(self):
        """
        (team_policies) Enabled/disabled option for team members to suggest
        people to add to team

        Only call this if :meth:`is_member_suggestions_change_policy` is true.

        :rtype: MemberSuggestionsChangePolicyType
        """
        if not self.is_member_suggestions_change_policy():
            raise AttributeError("tag 'member_suggestions_change_policy' not set")
        return self._value

    def get_microsoft_office_addin_change_policy(self):
        """
        (team_policies) Enabled/disabled Microsoft Office add-in

        Only call this if :meth:`is_microsoft_office_addin_change_policy` is true.

        :rtype: MicrosoftOfficeAddinChangePolicyType
        """
        if not self.is_microsoft_office_addin_change_policy():
            raise AttributeError("tag 'microsoft_office_addin_change_policy' not set")
        return self._value

    def get_network_control_change_policy(self):
        """
        (team_policies) Enabled/disabled network control

        Only call this if :meth:`is_network_control_change_policy` is true.

        :rtype: NetworkControlChangePolicyType
        """
        if not self.is_network_control_change_policy():
            raise AttributeError("tag 'network_control_change_policy' not set")
        return self._value

    def get_paper_change_deployment_policy(self):
        """
        (team_policies) Changed whether Dropbox Paper, when enabled, is deployed
        to all members or to specific members

        Only call this if :meth:`is_paper_change_deployment_policy` is true.

        :rtype: PaperChangeDeploymentPolicyType
        """
        if not self.is_paper_change_deployment_policy():
            raise AttributeError("tag 'paper_change_deployment_policy' not set")
        return self._value

    def get_paper_change_member_link_policy(self):
        """
        (team_policies) Changed whether non-members can view Paper docs with
        link (deprecated, no longer logged)

        Only call this if :meth:`is_paper_change_member_link_policy` is true.

        :rtype: PaperChangeMemberLinkPolicyType
        """
        if not self.is_paper_change_member_link_policy():
            raise AttributeError("tag 'paper_change_member_link_policy' not set")
        return self._value

    def get_paper_change_member_policy(self):
        """
        (team_policies) Changed whether members can share Paper docs outside
        team, and if docs are accessible only by team members or anyone by
        default

        Only call this if :meth:`is_paper_change_member_policy` is true.

        :rtype: PaperChangeMemberPolicyType
        """
        if not self.is_paper_change_member_policy():
            raise AttributeError("tag 'paper_change_member_policy' not set")
        return self._value

    def get_paper_change_policy(self):
        """
        (team_policies) Enabled/disabled Dropbox Paper for team

        Only call this if :meth:`is_paper_change_policy` is true.

        :rtype: PaperChangePolicyType
        """
        if not self.is_paper_change_policy():
            raise AttributeError("tag 'paper_change_policy' not set")
        return self._value

    def get_paper_default_folder_policy_changed(self):
        """
        (team_policies) Changed Paper Default Folder Policy setting for team

        Only call this if :meth:`is_paper_default_folder_policy_changed` is true.

        :rtype: PaperDefaultFolderPolicyChangedType
        """
        if not self.is_paper_default_folder_policy_changed():
            raise AttributeError("tag 'paper_default_folder_policy_changed' not set")
        return self._value

    def get_paper_desktop_policy_changed(self):
        """
        (team_policies) Enabled/disabled Paper Desktop for team

        Only call this if :meth:`is_paper_desktop_policy_changed` is true.

        :rtype: PaperDesktopPolicyChangedType
        """
        if not self.is_paper_desktop_policy_changed():
            raise AttributeError("tag 'paper_desktop_policy_changed' not set")
        return self._value

    def get_paper_enabled_users_group_addition(self):
        """
        (team_policies) Added users to Paper-enabled users list

        Only call this if :meth:`is_paper_enabled_users_group_addition` is true.

        :rtype: PaperEnabledUsersGroupAdditionType
        """
        if not self.is_paper_enabled_users_group_addition():
            raise AttributeError("tag 'paper_enabled_users_group_addition' not set")
        return self._value

    def get_paper_enabled_users_group_removal(self):
        """
        (team_policies) Removed users from Paper-enabled users list

        Only call this if :meth:`is_paper_enabled_users_group_removal` is true.

        :rtype: PaperEnabledUsersGroupRemovalType
        """
        if not self.is_paper_enabled_users_group_removal():
            raise AttributeError("tag 'paper_enabled_users_group_removal' not set")
        return self._value

    def get_password_strength_requirements_change_policy(self):
        """
        (team_policies) Changed team password strength requirements

        Only call this if :meth:`is_password_strength_requirements_change_policy` is true.

        :rtype: PasswordStrengthRequirementsChangePolicyType
        """
        if not self.is_password_strength_requirements_change_policy():
            raise AttributeError("tag 'password_strength_requirements_change_policy' not set")
        return self._value

    def get_permanent_delete_change_policy(self):
        """
        (team_policies) Enabled/disabled ability of team members to permanently
        delete content

        Only call this if :meth:`is_permanent_delete_change_policy` is true.

        :rtype: PermanentDeleteChangePolicyType
        """
        if not self.is_permanent_delete_change_policy():
            raise AttributeError("tag 'permanent_delete_change_policy' not set")
        return self._value

    def get_reseller_support_change_policy(self):
        """
        (team_policies) Enabled/disabled reseller support

        Only call this if :meth:`is_reseller_support_change_policy` is true.

        :rtype: ResellerSupportChangePolicyType
        """
        if not self.is_reseller_support_change_policy():
            raise AttributeError("tag 'reseller_support_change_policy' not set")
        return self._value

    def get_rewind_policy_changed(self):
        """
        (team_policies) Changed Rewind policy for team

        Only call this if :meth:`is_rewind_policy_changed` is true.

        :rtype: RewindPolicyChangedType
        """
        if not self.is_rewind_policy_changed():
            raise AttributeError("tag 'rewind_policy_changed' not set")
        return self._value

    def get_send_for_signature_policy_changed(self):
        """
        (team_policies) Changed send for signature policy for team

        Only call this if :meth:`is_send_for_signature_policy_changed` is true.

        :rtype: SendForSignaturePolicyChangedType
        """
        if not self.is_send_for_signature_policy_changed():
            raise AttributeError("tag 'send_for_signature_policy_changed' not set")
        return self._value

    def get_sharing_change_folder_join_policy(self):
        """
        (team_policies) Changed whether team members can join shared folders
        owned outside team

        Only call this if :meth:`is_sharing_change_folder_join_policy` is true.

        :rtype: SharingChangeFolderJoinPolicyType
        """
        if not self.is_sharing_change_folder_join_policy():
            raise AttributeError("tag 'sharing_change_folder_join_policy' not set")
        return self._value

    def get_sharing_change_link_allow_change_expiration_policy(self):
        """
        (team_policies) Changed the allow remove or change expiration policy for
        the links shared outside of the team

        Only call this if :meth:`is_sharing_change_link_allow_change_expiration_policy` is true.

        :rtype: SharingChangeLinkAllowChangeExpirationPolicyType
        """
        if not self.is_sharing_change_link_allow_change_expiration_policy():
            raise AttributeError("tag 'sharing_change_link_allow_change_expiration_policy' not set")
        return self._value

    def get_sharing_change_link_default_expiration_policy(self):
        """
        (team_policies) Changed the default expiration for the links shared
        outside of the team

        Only call this if :meth:`is_sharing_change_link_default_expiration_policy` is true.

        :rtype: SharingChangeLinkDefaultExpirationPolicyType
        """
        if not self.is_sharing_change_link_default_expiration_policy():
            raise AttributeError("tag 'sharing_change_link_default_expiration_policy' not set")
        return self._value

    def get_sharing_change_link_enforce_password_policy(self):
        """
        (team_policies) Changed the password requirement for the links shared
        outside of the team

        Only call this if :meth:`is_sharing_change_link_enforce_password_policy` is true.

        :rtype: SharingChangeLinkEnforcePasswordPolicyType
        """
        if not self.is_sharing_change_link_enforce_password_policy():
            raise AttributeError("tag 'sharing_change_link_enforce_password_policy' not set")
        return self._value

    def get_sharing_change_link_policy(self):
        """
        (team_policies) Changed whether members can share links outside team,
        and if links are accessible only by team members or anyone by default

        Only call this if :meth:`is_sharing_change_link_policy` is true.

        :rtype: SharingChangeLinkPolicyType
        """
        if not self.is_sharing_change_link_policy():
            raise AttributeError("tag 'sharing_change_link_policy' not set")
        return self._value

    def get_sharing_change_member_policy(self):
        """
        (team_policies) Changed whether members can share files/folders outside
        team

        Only call this if :meth:`is_sharing_change_member_policy` is true.

        :rtype: SharingChangeMemberPolicyType
        """
        if not self.is_sharing_change_member_policy():
            raise AttributeError("tag 'sharing_change_member_policy' not set")
        return self._value

    def get_showcase_change_download_policy(self):
        """
        (team_policies) Enabled/disabled downloading files from Dropbox Showcase
        for team

        Only call this if :meth:`is_showcase_change_download_policy` is true.

        :rtype: ShowcaseChangeDownloadPolicyType
        """
        if not self.is_showcase_change_download_policy():
            raise AttributeError("tag 'showcase_change_download_policy' not set")
        return self._value

    def get_showcase_change_enabled_policy(self):
        """
        (team_policies) Enabled/disabled Dropbox Showcase for team

        Only call this if :meth:`is_showcase_change_enabled_policy` is true.

        :rtype: ShowcaseChangeEnabledPolicyType
        """
        if not self.is_showcase_change_enabled_policy():
            raise AttributeError("tag 'showcase_change_enabled_policy' not set")
        return self._value

    def get_showcase_change_external_sharing_policy(self):
        """
        (team_policies) Enabled/disabled sharing Dropbox Showcase externally for
        team

        Only call this if :meth:`is_showcase_change_external_sharing_policy` is true.

        :rtype: ShowcaseChangeExternalSharingPolicyType
        """
        if not self.is_showcase_change_external_sharing_policy():
            raise AttributeError("tag 'showcase_change_external_sharing_policy' not set")
        return self._value

    def get_smarter_smart_sync_policy_changed(self):
        """
        (team_policies) Changed automatic Smart Sync setting for team

        Only call this if :meth:`is_smarter_smart_sync_policy_changed` is true.

        :rtype: SmarterSmartSyncPolicyChangedType
        """
        if not self.is_smarter_smart_sync_policy_changed():
            raise AttributeError("tag 'smarter_smart_sync_policy_changed' not set")
        return self._value

    def get_smart_sync_change_policy(self):
        """
        (team_policies) Changed default Smart Sync setting for team members

        Only call this if :meth:`is_smart_sync_change_policy` is true.

        :rtype: SmartSyncChangePolicyType
        """
        if not self.is_smart_sync_change_policy():
            raise AttributeError("tag 'smart_sync_change_policy' not set")
        return self._value

    def get_smart_sync_not_opt_out(self):
        """
        (team_policies) Opted team into Smart Sync

        Only call this if :meth:`is_smart_sync_not_opt_out` is true.

        :rtype: SmartSyncNotOptOutType
        """
        if not self.is_smart_sync_not_opt_out():
            raise AttributeError("tag 'smart_sync_not_opt_out' not set")
        return self._value

    def get_smart_sync_opt_out(self):
        """
        (team_policies) Opted team out of Smart Sync

        Only call this if :meth:`is_smart_sync_opt_out` is true.

        :rtype: SmartSyncOptOutType
        """
        if not self.is_smart_sync_opt_out():
            raise AttributeError("tag 'smart_sync_opt_out' not set")
        return self._value

    def get_sso_change_policy(self):
        """
        (team_policies) Changed single sign-on setting for team

        Only call this if :meth:`is_sso_change_policy` is true.

        :rtype: SsoChangePolicyType
        """
        if not self.is_sso_change_policy():
            raise AttributeError("tag 'sso_change_policy' not set")
        return self._value

    def get_team_branding_policy_changed(self):
        """
        (team_policies) Changed team branding policy for team

        Only call this if :meth:`is_team_branding_policy_changed` is true.

        :rtype: TeamBrandingPolicyChangedType
        """
        if not self.is_team_branding_policy_changed():
            raise AttributeError("tag 'team_branding_policy_changed' not set")
        return self._value

    def get_team_extensions_policy_changed(self):
        """
        (team_policies) Changed App Integrations setting for team

        Only call this if :meth:`is_team_extensions_policy_changed` is true.

        :rtype: TeamExtensionsPolicyChangedType
        """
        if not self.is_team_extensions_policy_changed():
            raise AttributeError("tag 'team_extensions_policy_changed' not set")
        return self._value

    def get_team_selective_sync_policy_changed(self):
        """
        (team_policies) Enabled/disabled Team Selective Sync for team

        Only call this if :meth:`is_team_selective_sync_policy_changed` is true.

        :rtype: TeamSelectiveSyncPolicyChangedType
        """
        if not self.is_team_selective_sync_policy_changed():
            raise AttributeError("tag 'team_selective_sync_policy_changed' not set")
        return self._value

    def get_team_sharing_whitelist_subjects_changed(self):
        """
        (team_policies) Edited the approved list for sharing externally

        Only call this if :meth:`is_team_sharing_whitelist_subjects_changed` is true.

        :rtype: TeamSharingWhitelistSubjectsChangedType
        """
        if not self.is_team_sharing_whitelist_subjects_changed():
            raise AttributeError("tag 'team_sharing_whitelist_subjects_changed' not set")
        return self._value

    def get_tfa_add_exception(self):
        """
        (team_policies) Added members to two factor authentication exception
        list

        Only call this if :meth:`is_tfa_add_exception` is true.

        :rtype: TfaAddExceptionType
        """
        if not self.is_tfa_add_exception():
            raise AttributeError("tag 'tfa_add_exception' not set")
        return self._value

    def get_tfa_change_policy(self):
        """
        (team_policies) Changed two-step verification setting for team

        Only call this if :meth:`is_tfa_change_policy` is true.

        :rtype: TfaChangePolicyType
        """
        if not self.is_tfa_change_policy():
            raise AttributeError("tag 'tfa_change_policy' not set")
        return self._value

    def get_tfa_remove_exception(self):
        """
        (team_policies) Removed members from two factor authentication exception
        list

        Only call this if :meth:`is_tfa_remove_exception` is true.

        :rtype: TfaRemoveExceptionType
        """
        if not self.is_tfa_remove_exception():
            raise AttributeError("tag 'tfa_remove_exception' not set")
        return self._value

    def get_two_account_change_policy(self):
        """
        (team_policies) Enabled/disabled option for members to link personal
        Dropbox account and team account to same computer

        Only call this if :meth:`is_two_account_change_policy` is true.

        :rtype: TwoAccountChangePolicyType
        """
        if not self.is_two_account_change_policy():
            raise AttributeError("tag 'two_account_change_policy' not set")
        return self._value

    def get_viewer_info_policy_changed(self):
        """
        (team_policies) Changed team policy for viewer info

        Only call this if :meth:`is_viewer_info_policy_changed` is true.

        :rtype: ViewerInfoPolicyChangedType
        """
        if not self.is_viewer_info_policy_changed():
            raise AttributeError("tag 'viewer_info_policy_changed' not set")
        return self._value

    def get_watermarking_policy_changed(self):
        """
        (team_policies) Changed watermarking policy for team

        Only call this if :meth:`is_watermarking_policy_changed` is true.

        :rtype: WatermarkingPolicyChangedType
        """
        if not self.is_watermarking_policy_changed():
            raise AttributeError("tag 'watermarking_policy_changed' not set")
        return self._value

    def get_web_sessions_change_active_session_limit(self):
        """
        (team_policies) Changed limit on active sessions per member

        Only call this if :meth:`is_web_sessions_change_active_session_limit` is true.

        :rtype: WebSessionsChangeActiveSessionLimitType
        """
        if not self.is_web_sessions_change_active_session_limit():
            raise AttributeError("tag 'web_sessions_change_active_session_limit' not set")
        return self._value

    def get_web_sessions_change_fixed_length_policy(self):
        """
        (team_policies) Changed how long members can stay signed in to
        Dropbox.com

        Only call this if :meth:`is_web_sessions_change_fixed_length_policy` is true.

        :rtype: WebSessionsChangeFixedLengthPolicyType
        """
        if not self.is_web_sessions_change_fixed_length_policy():
            raise AttributeError("tag 'web_sessions_change_fixed_length_policy' not set")
        return self._value

    def get_web_sessions_change_idle_length_policy(self):
        """
        (team_policies) Changed how long team members can be idle while signed
        in to Dropbox.com

        Only call this if :meth:`is_web_sessions_change_idle_length_policy` is true.

        :rtype: WebSessionsChangeIdleLengthPolicyType
        """
        if not self.is_web_sessions_change_idle_length_policy():
            raise AttributeError("tag 'web_sessions_change_idle_length_policy' not set")
        return self._value

    def get_data_residency_migration_request_successful(self):
        """
        (team_profile) Requested data residency migration for team data

        Only call this if :meth:`is_data_residency_migration_request_successful` is true.

        :rtype: DataResidencyMigrationRequestSuccessfulType
        """
        if not self.is_data_residency_migration_request_successful():
            raise AttributeError("tag 'data_residency_migration_request_successful' not set")
        return self._value

    def get_data_residency_migration_request_unsuccessful(self):
        """
        (team_profile) Request for data residency migration for team data has
        failed

        Only call this if :meth:`is_data_residency_migration_request_unsuccessful` is true.

        :rtype: DataResidencyMigrationRequestUnsuccessfulType
        """
        if not self.is_data_residency_migration_request_unsuccessful():
            raise AttributeError("tag 'data_residency_migration_request_unsuccessful' not set")
        return self._value

    def get_team_merge_from(self):
        """
        (team_profile) Merged another team into this team

        Only call this if :meth:`is_team_merge_from` is true.

        :rtype: TeamMergeFromType
        """
        if not self.is_team_merge_from():
            raise AttributeError("tag 'team_merge_from' not set")
        return self._value

    def get_team_merge_to(self):
        """
        (team_profile) Merged this team into another team

        Only call this if :meth:`is_team_merge_to` is true.

        :rtype: TeamMergeToType
        """
        if not self.is_team_merge_to():
            raise AttributeError("tag 'team_merge_to' not set")
        return self._value

    def get_team_profile_add_background(self):
        """
        (team_profile) Added team background to display on shared link headers

        Only call this if :meth:`is_team_profile_add_background` is true.

        :rtype: TeamProfileAddBackgroundType
        """
        if not self.is_team_profile_add_background():
            raise AttributeError("tag 'team_profile_add_background' not set")
        return self._value

    def get_team_profile_add_logo(self):
        """
        (team_profile) Added team logo to display on shared link headers

        Only call this if :meth:`is_team_profile_add_logo` is true.

        :rtype: TeamProfileAddLogoType
        """
        if not self.is_team_profile_add_logo():
            raise AttributeError("tag 'team_profile_add_logo' not set")
        return self._value

    def get_team_profile_change_background(self):
        """
        (team_profile) Changed team background displayed on shared link headers

        Only call this if :meth:`is_team_profile_change_background` is true.

        :rtype: TeamProfileChangeBackgroundType
        """
        if not self.is_team_profile_change_background():
            raise AttributeError("tag 'team_profile_change_background' not set")
        return self._value

    def get_team_profile_change_default_language(self):
        """
        (team_profile) Changed default language for team

        Only call this if :meth:`is_team_profile_change_default_language` is true.

        :rtype: TeamProfileChangeDefaultLanguageType
        """
        if not self.is_team_profile_change_default_language():
            raise AttributeError("tag 'team_profile_change_default_language' not set")
        return self._value

    def get_team_profile_change_logo(self):
        """
        (team_profile) Changed team logo displayed on shared link headers

        Only call this if :meth:`is_team_profile_change_logo` is true.

        :rtype: TeamProfileChangeLogoType
        """
        if not self.is_team_profile_change_logo():
            raise AttributeError("tag 'team_profile_change_logo' not set")
        return self._value

    def get_team_profile_change_name(self):
        """
        (team_profile) Changed team name

        Only call this if :meth:`is_team_profile_change_name` is true.

        :rtype: TeamProfileChangeNameType
        """
        if not self.is_team_profile_change_name():
            raise AttributeError("tag 'team_profile_change_name' not set")
        return self._value

    def get_team_profile_remove_background(self):
        """
        (team_profile) Removed team background displayed on shared link headers

        Only call this if :meth:`is_team_profile_remove_background` is true.

        :rtype: TeamProfileRemoveBackgroundType
        """
        if not self.is_team_profile_remove_background():
            raise AttributeError("tag 'team_profile_remove_background' not set")
        return self._value

    def get_team_profile_remove_logo(self):
        """
        (team_profile) Removed team logo displayed on shared link headers

        Only call this if :meth:`is_team_profile_remove_logo` is true.

        :rtype: TeamProfileRemoveLogoType
        """
        if not self.is_team_profile_remove_logo():
            raise AttributeError("tag 'team_profile_remove_logo' not set")
        return self._value

    def get_tfa_add_backup_phone(self):
        """
        (tfa) Added backup phone for two-step verification

        Only call this if :meth:`is_tfa_add_backup_phone` is true.

        :rtype: TfaAddBackupPhoneType
        """
        if not self.is_tfa_add_backup_phone():
            raise AttributeError("tag 'tfa_add_backup_phone' not set")
        return self._value

    def get_tfa_add_security_key(self):
        """
        (tfa) Added security key for two-step verification

        Only call this if :meth:`is_tfa_add_security_key` is true.

        :rtype: TfaAddSecurityKeyType
        """
        if not self.is_tfa_add_security_key():
            raise AttributeError("tag 'tfa_add_security_key' not set")
        return self._value

    def get_tfa_change_backup_phone(self):
        """
        (tfa) Changed backup phone for two-step verification

        Only call this if :meth:`is_tfa_change_backup_phone` is true.

        :rtype: TfaChangeBackupPhoneType
        """
        if not self.is_tfa_change_backup_phone():
            raise AttributeError("tag 'tfa_change_backup_phone' not set")
        return self._value

    def get_tfa_change_status(self):
        """
        (tfa) Enabled/disabled/changed two-step verification setting

        Only call this if :meth:`is_tfa_change_status` is true.

        :rtype: TfaChangeStatusType
        """
        if not self.is_tfa_change_status():
            raise AttributeError("tag 'tfa_change_status' not set")
        return self._value

    def get_tfa_remove_backup_phone(self):
        """
        (tfa) Removed backup phone for two-step verification

        Only call this if :meth:`is_tfa_remove_backup_phone` is true.

        :rtype: TfaRemoveBackupPhoneType
        """
        if not self.is_tfa_remove_backup_phone():
            raise AttributeError("tag 'tfa_remove_backup_phone' not set")
        return self._value

    def get_tfa_remove_security_key(self):
        """
        (tfa) Removed security key for two-step verification

        Only call this if :meth:`is_tfa_remove_security_key` is true.

        :rtype: TfaRemoveSecurityKeyType
        """
        if not self.is_tfa_remove_security_key():
            raise AttributeError("tag 'tfa_remove_security_key' not set")
        return self._value

    def get_tfa_reset(self):
        """
        (tfa) Reset two-step verification for team member

        Only call this if :meth:`is_tfa_reset` is true.

        :rtype: TfaResetType
        """
        if not self.is_tfa_reset():
            raise AttributeError("tag 'tfa_reset' not set")
        return self._value

    def get_changed_enterprise_admin_role(self):
        """
        (trusted_teams) Changed enterprise admin role

        Only call this if :meth:`is_changed_enterprise_admin_role` is true.

        :rtype: ChangedEnterpriseAdminRoleType
        """
        if not self.is_changed_enterprise_admin_role():
            raise AttributeError("tag 'changed_enterprise_admin_role' not set")
        return self._value

    def get_changed_enterprise_connected_team_status(self):
        """
        (trusted_teams) Changed enterprise-connected team status

        Only call this if :meth:`is_changed_enterprise_connected_team_status` is true.

        :rtype: ChangedEnterpriseConnectedTeamStatusType
        """
        if not self.is_changed_enterprise_connected_team_status():
            raise AttributeError("tag 'changed_enterprise_connected_team_status' not set")
        return self._value

    def get_ended_enterprise_admin_session(self):
        """
        (trusted_teams) Ended enterprise admin session

        Only call this if :meth:`is_ended_enterprise_admin_session` is true.

        :rtype: EndedEnterpriseAdminSessionType
        """
        if not self.is_ended_enterprise_admin_session():
            raise AttributeError("tag 'ended_enterprise_admin_session' not set")
        return self._value

    def get_ended_enterprise_admin_session_deprecated(self):
        """
        (trusted_teams) Ended enterprise admin session (deprecated, replaced by
        'Ended enterprise admin session')

        Only call this if :meth:`is_ended_enterprise_admin_session_deprecated` is true.

        :rtype: EndedEnterpriseAdminSessionDeprecatedType
        """
        if not self.is_ended_enterprise_admin_session_deprecated():
            raise AttributeError("tag 'ended_enterprise_admin_session_deprecated' not set")
        return self._value

    def get_enterprise_settings_locking(self):
        """
        (trusted_teams) Changed who can update a setting

        Only call this if :meth:`is_enterprise_settings_locking` is true.

        :rtype: EnterpriseSettingsLockingType
        """
        if not self.is_enterprise_settings_locking():
            raise AttributeError("tag 'enterprise_settings_locking' not set")
        return self._value

    def get_guest_admin_change_status(self):
        """
        (trusted_teams) Changed guest team admin status

        Only call this if :meth:`is_guest_admin_change_status` is true.

        :rtype: GuestAdminChangeStatusType
        """
        if not self.is_guest_admin_change_status():
            raise AttributeError("tag 'guest_admin_change_status' not set")
        return self._value

    def get_started_enterprise_admin_session(self):
        """
        (trusted_teams) Started enterprise admin session

        Only call this if :meth:`is_started_enterprise_admin_session` is true.

        :rtype: StartedEnterpriseAdminSessionType
        """
        if not self.is_started_enterprise_admin_session():
            raise AttributeError("tag 'started_enterprise_admin_session' not set")
        return self._value

    def get_team_merge_request_accepted(self):
        """
        (trusted_teams) Accepted a team merge request

        Only call this if :meth:`is_team_merge_request_accepted` is true.

        :rtype: TeamMergeRequestAcceptedType
        """
        if not self.is_team_merge_request_accepted():
            raise AttributeError("tag 'team_merge_request_accepted' not set")
        return self._value

    def get_team_merge_request_accepted_shown_to_primary_team(self):
        """
        (trusted_teams) Accepted a team merge request (deprecated, replaced by
        'Accepted a team merge request')

        Only call this if :meth:`is_team_merge_request_accepted_shown_to_primary_team` is true.

        :rtype: TeamMergeRequestAcceptedShownToPrimaryTeamType
        """
        if not self.is_team_merge_request_accepted_shown_to_primary_team():
            raise AttributeError("tag 'team_merge_request_accepted_shown_to_primary_team' not set")
        return self._value

    def get_team_merge_request_accepted_shown_to_secondary_team(self):
        """
        (trusted_teams) Accepted a team merge request (deprecated, replaced by
        'Accepted a team merge request')

        Only call this if :meth:`is_team_merge_request_accepted_shown_to_secondary_team` is true.

        :rtype: TeamMergeRequestAcceptedShownToSecondaryTeamType
        """
        if not self.is_team_merge_request_accepted_shown_to_secondary_team():
            raise AttributeError("tag 'team_merge_request_accepted_shown_to_secondary_team' not set")
        return self._value

    def get_team_merge_request_auto_canceled(self):
        """
        (trusted_teams) Automatically canceled team merge request

        Only call this if :meth:`is_team_merge_request_auto_canceled` is true.

        :rtype: TeamMergeRequestAutoCanceledType
        """
        if not self.is_team_merge_request_auto_canceled():
            raise AttributeError("tag 'team_merge_request_auto_canceled' not set")
        return self._value

    def get_team_merge_request_canceled(self):
        """
        (trusted_teams) Canceled a team merge request

        Only call this if :meth:`is_team_merge_request_canceled` is true.

        :rtype: TeamMergeRequestCanceledType
        """
        if not self.is_team_merge_request_canceled():
            raise AttributeError("tag 'team_merge_request_canceled' not set")
        return self._value

    def get_team_merge_request_canceled_shown_to_primary_team(self):
        """
        (trusted_teams) Canceled a team merge request (deprecated, replaced by
        'Canceled a team merge request')

        Only call this if :meth:`is_team_merge_request_canceled_shown_to_primary_team` is true.

        :rtype: TeamMergeRequestCanceledShownToPrimaryTeamType
        """
        if not self.is_team_merge_request_canceled_shown_to_primary_team():
            raise AttributeError("tag 'team_merge_request_canceled_shown_to_primary_team' not set")
        return self._value

    def get_team_merge_request_canceled_shown_to_secondary_team(self):
        """
        (trusted_teams) Canceled a team merge request (deprecated, replaced by
        'Canceled a team merge request')

        Only call this if :meth:`is_team_merge_request_canceled_shown_to_secondary_team` is true.

        :rtype: TeamMergeRequestCanceledShownToSecondaryTeamType
        """
        if not self.is_team_merge_request_canceled_shown_to_secondary_team():
            raise AttributeError("tag 'team_merge_request_canceled_shown_to_secondary_team' not set")
        return self._value

    def get_team_merge_request_expired(self):
        """
        (trusted_teams) Team merge request expired

        Only call this if :meth:`is_team_merge_request_expired` is true.

        :rtype: TeamMergeRequestExpiredType
        """
        if not self.is_team_merge_request_expired():
            raise AttributeError("tag 'team_merge_request_expired' not set")
        return self._value

    def get_team_merge_request_expired_shown_to_primary_team(self):
        """
        (trusted_teams) Team merge request expired (deprecated, replaced by
        'Team merge request expired')

        Only call this if :meth:`is_team_merge_request_expired_shown_to_primary_team` is true.

        :rtype: TeamMergeRequestExpiredShownToPrimaryTeamType
        """
        if not self.is_team_merge_request_expired_shown_to_primary_team():
            raise AttributeError("tag 'team_merge_request_expired_shown_to_primary_team' not set")
        return self._value

    def get_team_merge_request_expired_shown_to_secondary_team(self):
        """
        (trusted_teams) Team merge request expired (deprecated, replaced by
        'Team merge request expired')

        Only call this if :meth:`is_team_merge_request_expired_shown_to_secondary_team` is true.

        :rtype: TeamMergeRequestExpiredShownToSecondaryTeamType
        """
        if not self.is_team_merge_request_expired_shown_to_secondary_team():
            raise AttributeError("tag 'team_merge_request_expired_shown_to_secondary_team' not set")
        return self._value

    def get_team_merge_request_rejected_shown_to_primary_team(self):
        """
        (trusted_teams) Rejected a team merge request (deprecated, no longer
        logged)

        Only call this if :meth:`is_team_merge_request_rejected_shown_to_primary_team` is true.

        :rtype: TeamMergeRequestRejectedShownToPrimaryTeamType
        """
        if not self.is_team_merge_request_rejected_shown_to_primary_team():
            raise AttributeError("tag 'team_merge_request_rejected_shown_to_primary_team' not set")
        return self._value

    def get_team_merge_request_rejected_shown_to_secondary_team(self):
        """
        (trusted_teams) Rejected a team merge request (deprecated, no longer
        logged)

        Only call this if :meth:`is_team_merge_request_rejected_shown_to_secondary_team` is true.

        :rtype: TeamMergeRequestRejectedShownToSecondaryTeamType
        """
        if not self.is_team_merge_request_rejected_shown_to_secondary_team():
            raise AttributeError("tag 'team_merge_request_rejected_shown_to_secondary_team' not set")
        return self._value

    def get_team_merge_request_reminder(self):
        """
        (trusted_teams) Sent a team merge request reminder

        Only call this if :meth:`is_team_merge_request_reminder` is true.

        :rtype: TeamMergeRequestReminderType
        """
        if not self.is_team_merge_request_reminder():
            raise AttributeError("tag 'team_merge_request_reminder' not set")
        return self._value

    def get_team_merge_request_reminder_shown_to_primary_team(self):
        """
        (trusted_teams) Sent a team merge request reminder (deprecated, replaced
        by 'Sent a team merge request reminder')

        Only call this if :meth:`is_team_merge_request_reminder_shown_to_primary_team` is true.

        :rtype: TeamMergeRequestReminderShownToPrimaryTeamType
        """
        if not self.is_team_merge_request_reminder_shown_to_primary_team():
            raise AttributeError("tag 'team_merge_request_reminder_shown_to_primary_team' not set")
        return self._value

    def get_team_merge_request_reminder_shown_to_secondary_team(self):
        """
        (trusted_teams) Sent a team merge request reminder (deprecated, replaced
        by 'Sent a team merge request reminder')

        Only call this if :meth:`is_team_merge_request_reminder_shown_to_secondary_team` is true.

        :rtype: TeamMergeRequestReminderShownToSecondaryTeamType
        """
        if not self.is_team_merge_request_reminder_shown_to_secondary_team():
            raise AttributeError("tag 'team_merge_request_reminder_shown_to_secondary_team' not set")
        return self._value

    def get_team_merge_request_revoked(self):
        """
        (trusted_teams) Canceled the team merge

        Only call this if :meth:`is_team_merge_request_revoked` is true.

        :rtype: TeamMergeRequestRevokedType
        """
        if not self.is_team_merge_request_revoked():
            raise AttributeError("tag 'team_merge_request_revoked' not set")
        return self._value

    def get_team_merge_request_sent_shown_to_primary_team(self):
        """
        (trusted_teams) Requested to merge their Dropbox team into yours

        Only call this if :meth:`is_team_merge_request_sent_shown_to_primary_team` is true.

        :rtype: TeamMergeRequestSentShownToPrimaryTeamType
        """
        if not self.is_team_merge_request_sent_shown_to_primary_team():
            raise AttributeError("tag 'team_merge_request_sent_shown_to_primary_team' not set")
        return self._value

    def get_team_merge_request_sent_shown_to_secondary_team(self):
        """
        (trusted_teams) Requested to merge your team into another Dropbox team

        Only call this if :meth:`is_team_merge_request_sent_shown_to_secondary_team` is true.

        :rtype: TeamMergeRequestSentShownToSecondaryTeamType
        """
        if not self.is_team_merge_request_sent_shown_to_secondary_team():
            raise AttributeError("tag 'team_merge_request_sent_shown_to_secondary_team' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EventType, self)._process_custom_annotations(annotation_type, field_path, processor)

EventType_validator = bv.Union(EventType)

class EventTypeArg(bb.Union):
    """
    The type of the event.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar team_log.EventTypeArg.admin_alerting_alert_state_changed:
        (admin_alerting) Changed an alert state
    :ivar team_log.EventTypeArg.admin_alerting_changed_alert_config:
        (admin_alerting) Changed an alert setting
    :ivar team_log.EventTypeArg.admin_alerting_triggered_alert: (admin_alerting)
        Triggered security alert
    :ivar team_log.EventTypeArg.app_blocked_by_permissions: (apps) Failed to
        connect app for member
    :ivar team_log.EventTypeArg.app_link_team: (apps) Linked app for team
    :ivar team_log.EventTypeArg.app_link_user: (apps) Linked app for member
    :ivar team_log.EventTypeArg.app_unlink_team: (apps) Unlinked app for team
    :ivar team_log.EventTypeArg.app_unlink_user: (apps) Unlinked app for member
    :ivar team_log.EventTypeArg.integration_connected: (apps) Connected
        integration for member
    :ivar team_log.EventTypeArg.integration_disconnected: (apps) Disconnected
        integration for member
    :ivar team_log.EventTypeArg.file_add_comment: (comments) Added file comment
    :ivar team_log.EventTypeArg.file_change_comment_subscription: (comments)
        Subscribed to or unsubscribed from comment notifications for file
    :ivar team_log.EventTypeArg.file_delete_comment: (comments) Deleted file
        comment
    :ivar team_log.EventTypeArg.file_edit_comment: (comments) Edited file
        comment
    :ivar team_log.EventTypeArg.file_like_comment: (comments) Liked file comment
        (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.file_resolve_comment: (comments) Resolved file
        comment
    :ivar team_log.EventTypeArg.file_unlike_comment: (comments) Unliked file
        comment (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.file_unresolve_comment: (comments) Unresolved
        file comment
    :ivar team_log.EventTypeArg.governance_policy_add_folders: (data_governance)
        Added folders to policy
    :ivar team_log.EventTypeArg.governance_policy_add_folder_failed:
        (data_governance) Couldn't add a folder to a policy
    :ivar team_log.EventTypeArg.governance_policy_content_disposed:
        (data_governance) Content disposed
    :ivar team_log.EventTypeArg.governance_policy_create: (data_governance)
        Activated a new policy
    :ivar team_log.EventTypeArg.governance_policy_delete: (data_governance)
        Deleted a policy
    :ivar team_log.EventTypeArg.governance_policy_edit_details:
        (data_governance) Edited policy
    :ivar team_log.EventTypeArg.governance_policy_edit_duration:
        (data_governance) Changed policy duration
    :ivar team_log.EventTypeArg.governance_policy_export_created:
        (data_governance) Created a policy download
    :ivar team_log.EventTypeArg.governance_policy_export_removed:
        (data_governance) Removed a policy download
    :ivar team_log.EventTypeArg.governance_policy_remove_folders:
        (data_governance) Removed folders from policy
    :ivar team_log.EventTypeArg.governance_policy_report_created:
        (data_governance) Created a summary report for a policy
    :ivar team_log.EventTypeArg.governance_policy_zip_part_downloaded:
        (data_governance) Downloaded content from a policy
    :ivar team_log.EventTypeArg.legal_holds_activate_a_hold: (data_governance)
        Activated a hold
    :ivar team_log.EventTypeArg.legal_holds_add_members: (data_governance) Added
        members to a hold
    :ivar team_log.EventTypeArg.legal_holds_change_hold_details:
        (data_governance) Edited details for a hold
    :ivar team_log.EventTypeArg.legal_holds_change_hold_name: (data_governance)
        Renamed a hold
    :ivar team_log.EventTypeArg.legal_holds_export_a_hold: (data_governance)
        Exported hold
    :ivar team_log.EventTypeArg.legal_holds_export_cancelled: (data_governance)
        Canceled export for a hold
    :ivar team_log.EventTypeArg.legal_holds_export_downloaded: (data_governance)
        Downloaded export for a hold
    :ivar team_log.EventTypeArg.legal_holds_export_removed: (data_governance)
        Removed export for a hold
    :ivar team_log.EventTypeArg.legal_holds_release_a_hold: (data_governance)
        Released a hold
    :ivar team_log.EventTypeArg.legal_holds_remove_members: (data_governance)
        Removed members from a hold
    :ivar team_log.EventTypeArg.legal_holds_report_a_hold: (data_governance)
        Created a summary report for a hold
    :ivar team_log.EventTypeArg.device_change_ip_desktop: (devices) Changed IP
        address associated with active desktop session
    :ivar team_log.EventTypeArg.device_change_ip_mobile: (devices) Changed IP
        address associated with active mobile session
    :ivar team_log.EventTypeArg.device_change_ip_web: (devices) Changed IP
        address associated with active web session
    :ivar team_log.EventTypeArg.device_delete_on_unlink_fail: (devices) Failed
        to delete all files from unlinked device
    :ivar team_log.EventTypeArg.device_delete_on_unlink_success: (devices)
        Deleted all files from unlinked device
    :ivar team_log.EventTypeArg.device_link_fail: (devices) Failed to link
        device
    :ivar team_log.EventTypeArg.device_link_success: (devices) Linked device
    :ivar team_log.EventTypeArg.device_management_disabled: (devices) Disabled
        device management (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.device_management_enabled: (devices) Enabled
        device management (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.device_sync_backup_status_changed: (devices)
        Enabled/disabled backup for computer
    :ivar team_log.EventTypeArg.device_unlink: (devices) Disconnected device
    :ivar team_log.EventTypeArg.dropbox_passwords_exported: (devices) Exported
        passwords
    :ivar team_log.EventTypeArg.dropbox_passwords_new_device_enrolled: (devices)
        Enrolled new Dropbox Passwords device
    :ivar team_log.EventTypeArg.emm_refresh_auth_token: (devices) Refreshed auth
        token used for setting up EMM
    :ivar
        team_log.EventTypeArg.external_drive_backup_eligibility_status_checked:
        (devices) Checked external drive backup eligibility status
    :ivar team_log.EventTypeArg.external_drive_backup_status_changed: (devices)
        Modified external drive backup
    :ivar team_log.EventTypeArg.account_capture_change_availability: (domains)
        Granted/revoked option to enable account capture on team domains
    :ivar team_log.EventTypeArg.account_capture_migrate_account: (domains)
        Account-captured user migrated account to team
    :ivar team_log.EventTypeArg.account_capture_notification_emails_sent:
        (domains) Sent account capture email to all unmanaged members
    :ivar team_log.EventTypeArg.account_capture_relinquish_account: (domains)
        Account-captured user changed account email to personal email
    :ivar team_log.EventTypeArg.disabled_domain_invites: (domains) Disabled
        domain invites (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.domain_invites_approve_request_to_join_team:
        (domains) Approved user's request to join team
    :ivar team_log.EventTypeArg.domain_invites_decline_request_to_join_team:
        (domains) Declined user's request to join team
    :ivar team_log.EventTypeArg.domain_invites_email_existing_users: (domains)
        Sent domain invites to existing domain accounts (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.domain_invites_request_to_join_team: (domains)
        Requested to join team
    :ivar team_log.EventTypeArg.domain_invites_set_invite_new_user_pref_to_no:
        (domains) Disabled "Automatically invite new users" (deprecated, no
        longer logged)
    :ivar team_log.EventTypeArg.domain_invites_set_invite_new_user_pref_to_yes:
        (domains) Enabled "Automatically invite new users" (deprecated, no
        longer logged)
    :ivar team_log.EventTypeArg.domain_verification_add_domain_fail: (domains)
        Failed to verify team domain
    :ivar team_log.EventTypeArg.domain_verification_add_domain_success:
        (domains) Verified team domain
    :ivar team_log.EventTypeArg.domain_verification_remove_domain: (domains)
        Removed domain from list of verified team domains
    :ivar team_log.EventTypeArg.enabled_domain_invites: (domains) Enabled domain
        invites (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.apply_naming_convention: (file_operations)
        Applied naming convention
    :ivar team_log.EventTypeArg.create_folder: (file_operations) Created folders
        (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.file_add: (file_operations) Added files and/or
        folders
    :ivar team_log.EventTypeArg.file_copy: (file_operations) Copied files and/or
        folders
    :ivar team_log.EventTypeArg.file_delete: (file_operations) Deleted files
        and/or folders
    :ivar team_log.EventTypeArg.file_download: (file_operations) Downloaded
        files and/or folders
    :ivar team_log.EventTypeArg.file_edit: (file_operations) Edited files
    :ivar team_log.EventTypeArg.file_get_copy_reference: (file_operations)
        Created copy reference to file/folder
    :ivar team_log.EventTypeArg.file_locking_lock_status_changed:
        (file_operations) Locked/unlocked editing for a file
    :ivar team_log.EventTypeArg.file_move: (file_operations) Moved files and/or
        folders
    :ivar team_log.EventTypeArg.file_permanently_delete: (file_operations)
        Permanently deleted files and/or folders
    :ivar team_log.EventTypeArg.file_preview: (file_operations) Previewed files
        and/or folders
    :ivar team_log.EventTypeArg.file_rename: (file_operations) Renamed files
        and/or folders
    :ivar team_log.EventTypeArg.file_restore: (file_operations) Restored deleted
        files and/or folders
    :ivar team_log.EventTypeArg.file_revert: (file_operations) Reverted files to
        previous version
    :ivar team_log.EventTypeArg.file_rollback_changes: (file_operations) Rolled
        back file actions
    :ivar team_log.EventTypeArg.file_save_copy_reference: (file_operations)
        Saved file/folder using copy reference
    :ivar team_log.EventTypeArg.folder_overview_description_changed:
        (file_operations) Updated folder overview
    :ivar team_log.EventTypeArg.folder_overview_item_pinned: (file_operations)
        Pinned item to folder overview
    :ivar team_log.EventTypeArg.folder_overview_item_unpinned: (file_operations)
        Unpinned item from folder overview
    :ivar team_log.EventTypeArg.object_label_added: (file_operations) Added a
        label
    :ivar team_log.EventTypeArg.object_label_removed: (file_operations) Removed
        a label
    :ivar team_log.EventTypeArg.object_label_updated_value: (file_operations)
        Updated a label's value
    :ivar team_log.EventTypeArg.organize_folder_with_tidy: (file_operations)
        Organized a folder with multi-file organize
    :ivar team_log.EventTypeArg.rewind_folder: (file_operations) Rewound a
        folder
    :ivar team_log.EventTypeArg.undo_naming_convention: (file_operations)
        Reverted naming convention
    :ivar team_log.EventTypeArg.undo_organize_folder_with_tidy:
        (file_operations) Removed multi-file organize
    :ivar team_log.EventTypeArg.user_tags_added: (file_operations) Tagged a file
    :ivar team_log.EventTypeArg.user_tags_removed: (file_operations) Removed
        tags
    :ivar team_log.EventTypeArg.email_ingest_receive_file: (file_requests)
        Received files via Email to Dropbox
    :ivar team_log.EventTypeArg.file_request_change: (file_requests) Changed
        file request
    :ivar team_log.EventTypeArg.file_request_close: (file_requests) Closed file
        request
    :ivar team_log.EventTypeArg.file_request_create: (file_requests) Created
        file request
    :ivar team_log.EventTypeArg.file_request_delete: (file_requests) Delete file
        request
    :ivar team_log.EventTypeArg.file_request_receive_file: (file_requests)
        Received files for file request
    :ivar team_log.EventTypeArg.group_add_external_id: (groups) Added external
        ID for group
    :ivar team_log.EventTypeArg.group_add_member: (groups) Added team members to
        group
    :ivar team_log.EventTypeArg.group_change_external_id: (groups) Changed
        external ID for group
    :ivar team_log.EventTypeArg.group_change_management_type: (groups) Changed
        group management type
    :ivar team_log.EventTypeArg.group_change_member_role: (groups) Changed
        manager permissions of group member
    :ivar team_log.EventTypeArg.group_create: (groups) Created group
    :ivar team_log.EventTypeArg.group_delete: (groups) Deleted group
    :ivar team_log.EventTypeArg.group_description_updated: (groups) Updated
        group (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.group_join_policy_updated: (groups) Updated
        group join policy (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.group_moved: (groups) Moved group (deprecated,
        no longer logged)
    :ivar team_log.EventTypeArg.group_remove_external_id: (groups) Removed
        external ID for group
    :ivar team_log.EventTypeArg.group_remove_member: (groups) Removed team
        members from group
    :ivar team_log.EventTypeArg.group_rename: (groups) Renamed group
    :ivar team_log.EventTypeArg.account_lock_or_unlocked: (logins)
        Unlocked/locked account after failed sign in attempts
    :ivar team_log.EventTypeArg.emm_error: (logins) Failed to sign in via EMM
        (deprecated, replaced by 'Failed to sign in')
    :ivar team_log.EventTypeArg.guest_admin_signed_in_via_trusted_teams:
        (logins) Started trusted team admin session
    :ivar team_log.EventTypeArg.guest_admin_signed_out_via_trusted_teams:
        (logins) Ended trusted team admin session
    :ivar team_log.EventTypeArg.login_fail: (logins) Failed to sign in
    :ivar team_log.EventTypeArg.login_success: (logins) Signed in
    :ivar team_log.EventTypeArg.logout: (logins) Signed out
    :ivar team_log.EventTypeArg.reseller_support_session_end: (logins) Ended
        reseller support session
    :ivar team_log.EventTypeArg.reseller_support_session_start: (logins) Started
        reseller support session
    :ivar team_log.EventTypeArg.sign_in_as_session_end: (logins) Ended admin
        sign-in-as session
    :ivar team_log.EventTypeArg.sign_in_as_session_start: (logins) Started admin
        sign-in-as session
    :ivar team_log.EventTypeArg.sso_error: (logins) Failed to sign in via SSO
        (deprecated, replaced by 'Failed to sign in')
    :ivar team_log.EventTypeArg.create_team_invite_link: (members) Created team
        invite link
    :ivar team_log.EventTypeArg.delete_team_invite_link: (members) Deleted team
        invite link
    :ivar team_log.EventTypeArg.member_add_external_id: (members) Added an
        external ID for team member
    :ivar team_log.EventTypeArg.member_add_name: (members) Added team member
        name
    :ivar team_log.EventTypeArg.member_change_admin_role: (members) Changed team
        member admin role
    :ivar team_log.EventTypeArg.member_change_email: (members) Changed team
        member email
    :ivar team_log.EventTypeArg.member_change_external_id: (members) Changed the
        external ID for team member
    :ivar team_log.EventTypeArg.member_change_membership_type: (members) Changed
        membership type (limited/full) of member (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.member_change_name: (members) Changed team
        member name
    :ivar team_log.EventTypeArg.member_change_reseller_role: (members) Changed
        team member reseller role
    :ivar team_log.EventTypeArg.member_change_status: (members) Changed member
        status (invited, joined, suspended, etc.)
    :ivar team_log.EventTypeArg.member_delete_manual_contacts: (members) Cleared
        manually added contacts
    :ivar team_log.EventTypeArg.member_delete_profile_photo: (members) Deleted
        team member profile photo
    :ivar team_log.EventTypeArg.member_permanently_delete_account_contents:
        (members) Permanently deleted contents of deleted team member account
    :ivar team_log.EventTypeArg.member_remove_external_id: (members) Removed the
        external ID for team member
    :ivar team_log.EventTypeArg.member_set_profile_photo: (members) Set team
        member profile photo
    :ivar team_log.EventTypeArg.member_space_limits_add_custom_quota: (members)
        Set custom member space limit
    :ivar team_log.EventTypeArg.member_space_limits_change_custom_quota:
        (members) Changed custom member space limit
    :ivar team_log.EventTypeArg.member_space_limits_change_status: (members)
        Changed space limit status
    :ivar team_log.EventTypeArg.member_space_limits_remove_custom_quota:
        (members) Removed custom member space limit
    :ivar team_log.EventTypeArg.member_suggest: (members) Suggested person to
        add to team
    :ivar team_log.EventTypeArg.member_transfer_account_contents: (members)
        Transferred contents of deleted member account to another member
    :ivar team_log.EventTypeArg.pending_secondary_email_added: (members) Added
        pending secondary email
    :ivar team_log.EventTypeArg.secondary_email_deleted: (members) Deleted
        secondary email
    :ivar team_log.EventTypeArg.secondary_email_verified: (members) Verified
        secondary email
    :ivar team_log.EventTypeArg.secondary_mails_policy_changed: (members)
        Secondary mails policy changed
    :ivar team_log.EventTypeArg.binder_add_page: (paper) Added Binder page
        (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_add_section: (paper) Added Binder section
        (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_remove_page: (paper) Removed Binder page
        (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_remove_section: (paper) Removed Binder
        section (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_rename_page: (paper) Renamed Binder page
        (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_rename_section: (paper) Renamed Binder
        section (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_reorder_page: (paper) Reordered Binder
        page (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.binder_reorder_section: (paper) Reordered Binder
        section (deprecated, replaced by 'Edited files')
    :ivar team_log.EventTypeArg.paper_content_add_member: (paper) Added users
        and/or groups to Paper doc/folder
    :ivar team_log.EventTypeArg.paper_content_add_to_folder: (paper) Added Paper
        doc/folder to folder
    :ivar team_log.EventTypeArg.paper_content_archive: (paper) Archived Paper
        doc/folder
    :ivar team_log.EventTypeArg.paper_content_create: (paper) Created Paper
        doc/folder
    :ivar team_log.EventTypeArg.paper_content_permanently_delete: (paper)
        Permanently deleted Paper doc/folder
    :ivar team_log.EventTypeArg.paper_content_remove_from_folder: (paper)
        Removed Paper doc/folder from folder
    :ivar team_log.EventTypeArg.paper_content_remove_member: (paper) Removed
        users and/or groups from Paper doc/folder
    :ivar team_log.EventTypeArg.paper_content_rename: (paper) Renamed Paper
        doc/folder
    :ivar team_log.EventTypeArg.paper_content_restore: (paper) Restored archived
        Paper doc/folder
    :ivar team_log.EventTypeArg.paper_doc_add_comment: (paper) Added Paper doc
        comment
    :ivar team_log.EventTypeArg.paper_doc_change_member_role: (paper) Changed
        member permissions for Paper doc
    :ivar team_log.EventTypeArg.paper_doc_change_sharing_policy: (paper) Changed
        sharing setting for Paper doc
    :ivar team_log.EventTypeArg.paper_doc_change_subscription: (paper)
        Followed/unfollowed Paper doc
    :ivar team_log.EventTypeArg.paper_doc_deleted: (paper) Archived Paper doc
        (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.paper_doc_delete_comment: (paper) Deleted Paper
        doc comment
    :ivar team_log.EventTypeArg.paper_doc_download: (paper) Downloaded Paper doc
        in specific format
    :ivar team_log.EventTypeArg.paper_doc_edit: (paper) Edited Paper doc
    :ivar team_log.EventTypeArg.paper_doc_edit_comment: (paper) Edited Paper doc
        comment
    :ivar team_log.EventTypeArg.paper_doc_followed: (paper) Followed Paper doc
        (deprecated, replaced by 'Followed/unfollowed Paper doc')
    :ivar team_log.EventTypeArg.paper_doc_mention: (paper) Mentioned user in
        Paper doc
    :ivar team_log.EventTypeArg.paper_doc_ownership_changed: (paper) Transferred
        ownership of Paper doc
    :ivar team_log.EventTypeArg.paper_doc_request_access: (paper) Requested
        access to Paper doc
    :ivar team_log.EventTypeArg.paper_doc_resolve_comment: (paper) Resolved
        Paper doc comment
    :ivar team_log.EventTypeArg.paper_doc_revert: (paper) Restored Paper doc to
        previous version
    :ivar team_log.EventTypeArg.paper_doc_slack_share: (paper) Shared Paper doc
        via Slack
    :ivar team_log.EventTypeArg.paper_doc_team_invite: (paper) Shared Paper doc
        with users and/or groups (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.paper_doc_trashed: (paper) Deleted Paper doc
    :ivar team_log.EventTypeArg.paper_doc_unresolve_comment: (paper) Unresolved
        Paper doc comment
    :ivar team_log.EventTypeArg.paper_doc_untrashed: (paper) Restored Paper doc
    :ivar team_log.EventTypeArg.paper_doc_view: (paper) Viewed Paper doc
    :ivar team_log.EventTypeArg.paper_external_view_allow: (paper) Changed Paper
        external sharing setting to anyone (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.paper_external_view_default_team: (paper)
        Changed Paper external sharing setting to default team (deprecated, no
        longer logged)
    :ivar team_log.EventTypeArg.paper_external_view_forbid: (paper) Changed
        Paper external sharing setting to team-only (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.paper_folder_change_subscription: (paper)
        Followed/unfollowed Paper folder
    :ivar team_log.EventTypeArg.paper_folder_deleted: (paper) Archived Paper
        folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.paper_folder_followed: (paper) Followed Paper
        folder (deprecated, replaced by 'Followed/unfollowed Paper folder')
    :ivar team_log.EventTypeArg.paper_folder_team_invite: (paper) Shared Paper
        folder with users and/or groups (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.paper_published_link_change_permission: (paper)
        Changed permissions for published doc
    :ivar team_log.EventTypeArg.paper_published_link_create: (paper) Published
        doc
    :ivar team_log.EventTypeArg.paper_published_link_disabled: (paper)
        Unpublished doc
    :ivar team_log.EventTypeArg.paper_published_link_view: (paper) Viewed
        published doc
    :ivar team_log.EventTypeArg.password_change: (passwords) Changed password
    :ivar team_log.EventTypeArg.password_reset: (passwords) Reset password
    :ivar team_log.EventTypeArg.password_reset_all: (passwords) Reset all team
        member passwords
    :ivar team_log.EventTypeArg.classification_create_report: (reports) Created
        Classification report
    :ivar team_log.EventTypeArg.classification_create_report_fail: (reports)
        Couldn't create Classification report
    :ivar team_log.EventTypeArg.emm_create_exceptions_report: (reports) Created
        EMM-excluded users report
    :ivar team_log.EventTypeArg.emm_create_usage_report: (reports) Created EMM
        mobile app usage report
    :ivar team_log.EventTypeArg.export_members_report: (reports) Created member
        data report
    :ivar team_log.EventTypeArg.export_members_report_fail: (reports) Failed to
        create members data report
    :ivar team_log.EventTypeArg.external_sharing_create_report: (reports)
        Created External sharing report
    :ivar team_log.EventTypeArg.external_sharing_report_failed: (reports)
        Couldn't create External sharing report
    :ivar team_log.EventTypeArg.no_expiration_link_gen_create_report: (reports)
        Report created: Links created with no expiration
    :ivar team_log.EventTypeArg.no_expiration_link_gen_report_failed: (reports)
        Couldn't create report: Links created with no expiration
    :ivar team_log.EventTypeArg.no_password_link_gen_create_report: (reports)
        Report created: Links created without passwords
    :ivar team_log.EventTypeArg.no_password_link_gen_report_failed: (reports)
        Couldn't create report: Links created without passwords
    :ivar team_log.EventTypeArg.no_password_link_view_create_report: (reports)
        Report created: Views of links without passwords
    :ivar team_log.EventTypeArg.no_password_link_view_report_failed: (reports)
        Couldn't create report: Views of links without passwords
    :ivar team_log.EventTypeArg.outdated_link_view_create_report: (reports)
        Report created: Views of old links
    :ivar team_log.EventTypeArg.outdated_link_view_report_failed: (reports)
        Couldn't create report: Views of old links
    :ivar team_log.EventTypeArg.paper_admin_export_start: (reports) Exported all
        team Paper docs
    :ivar team_log.EventTypeArg.smart_sync_create_admin_privilege_report:
        (reports) Created Smart Sync non-admin devices report
    :ivar team_log.EventTypeArg.team_activity_create_report: (reports) Created
        team activity report
    :ivar team_log.EventTypeArg.team_activity_create_report_fail: (reports)
        Couldn't generate team activity report
    :ivar team_log.EventTypeArg.collection_share: (sharing) Shared album
    :ivar team_log.EventTypeArg.file_transfers_file_add: (sharing) Transfer
        files added
    :ivar team_log.EventTypeArg.file_transfers_transfer_delete: (sharing)
        Deleted transfer
    :ivar team_log.EventTypeArg.file_transfers_transfer_download: (sharing)
        Transfer downloaded
    :ivar team_log.EventTypeArg.file_transfers_transfer_send: (sharing) Sent
        transfer
    :ivar team_log.EventTypeArg.file_transfers_transfer_view: (sharing) Viewed
        transfer
    :ivar team_log.EventTypeArg.note_acl_invite_only: (sharing) Changed Paper
        doc to invite-only (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.note_acl_link: (sharing) Changed Paper doc to
        link-accessible (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.note_acl_team_link: (sharing) Changed Paper doc
        to link-accessible for team (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.note_shared: (sharing) Shared Paper doc
        (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.note_share_receive: (sharing) Shared received
        Paper doc (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.open_note_shared: (sharing) Opened shared Paper
        doc (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_add_group: (sharing) Added team to shared
        folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_allow_non_members_to_view_shared_links:
        (sharing) Allowed non-collaborators to view links to files in shared
        folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_external_invite_warn: (sharing) Set team
        members to see warning before sharing folders outside team (deprecated,
        no longer logged)
    :ivar team_log.EventTypeArg.sf_fb_invite: (sharing) Invited Facebook users
        to shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_fb_invite_change_role: (sharing) Changed
        Facebook user's role in shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_fb_uninvite: (sharing) Uninvited Facebook
        user from shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_invite_group: (sharing) Invited group to
        shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_team_grant_access: (sharing) Granted access
        to shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_team_invite: (sharing) Invited team members
        to shared folder (deprecated, replaced by 'Invited user to Dropbox and
        added them to shared file/folder')
    :ivar team_log.EventTypeArg.sf_team_invite_change_role: (sharing) Changed
        team member's role in shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_team_join: (sharing) Joined team member's
        shared folder (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_team_join_from_oob_link: (sharing) Joined
        team member's shared folder from link (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.sf_team_uninvite: (sharing) Unshared folder with
        team member (deprecated, replaced by 'Removed invitee from shared
        file/folder before invite was accepted')
    :ivar team_log.EventTypeArg.shared_content_add_invitees: (sharing) Invited
        user to Dropbox and added them to shared file/folder
    :ivar team_log.EventTypeArg.shared_content_add_link_expiry: (sharing) Added
        expiration date to link for shared file/folder (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.shared_content_add_link_password: (sharing)
        Added password to link for shared file/folder (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.shared_content_add_member: (sharing) Added users
        and/or groups to shared file/folder
    :ivar team_log.EventTypeArg.shared_content_change_downloads_policy:
        (sharing) Changed whether members can download shared file/folder
        (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.shared_content_change_invitee_role: (sharing)
        Changed access type of invitee to shared file/folder before invite was
        accepted
    :ivar team_log.EventTypeArg.shared_content_change_link_audience: (sharing)
        Changed link audience of shared file/folder (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.shared_content_change_link_expiry: (sharing)
        Changed link expiration of shared file/folder (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.shared_content_change_link_password: (sharing)
        Changed link password of shared file/folder (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.shared_content_change_member_role: (sharing)
        Changed access type of shared file/folder member
    :ivar team_log.EventTypeArg.shared_content_change_viewer_info_policy:
        (sharing) Changed whether members can see who viewed shared file/folder
    :ivar team_log.EventTypeArg.shared_content_claim_invitation: (sharing)
        Acquired membership of shared file/folder by accepting invite
    :ivar team_log.EventTypeArg.shared_content_copy: (sharing) Copied shared
        file/folder to own Dropbox
    :ivar team_log.EventTypeArg.shared_content_download: (sharing) Downloaded
        shared file/folder
    :ivar team_log.EventTypeArg.shared_content_relinquish_membership: (sharing)
        Left shared file/folder
    :ivar team_log.EventTypeArg.shared_content_remove_invitees: (sharing)
        Removed invitee from shared file/folder before invite was accepted
    :ivar team_log.EventTypeArg.shared_content_remove_link_expiry: (sharing)
        Removed link expiration date of shared file/folder (deprecated, no
        longer logged)
    :ivar team_log.EventTypeArg.shared_content_remove_link_password: (sharing)
        Removed link password of shared file/folder (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.shared_content_remove_member: (sharing) Removed
        user/group from shared file/folder
    :ivar team_log.EventTypeArg.shared_content_request_access: (sharing)
        Requested access to shared file/folder
    :ivar team_log.EventTypeArg.shared_content_restore_invitees: (sharing)
        Restored shared file/folder invitees
    :ivar team_log.EventTypeArg.shared_content_restore_member: (sharing)
        Restored users and/or groups to membership of shared file/folder
    :ivar team_log.EventTypeArg.shared_content_unshare: (sharing) Unshared
        file/folder by clearing membership
    :ivar team_log.EventTypeArg.shared_content_view: (sharing) Previewed shared
        file/folder
    :ivar team_log.EventTypeArg.shared_folder_change_link_policy: (sharing)
        Changed who can access shared folder via link
    :ivar team_log.EventTypeArg.shared_folder_change_members_inheritance_policy:
        (sharing) Changed whether shared folder inherits members from parent
        folder
    :ivar team_log.EventTypeArg.shared_folder_change_members_management_policy:
        (sharing) Changed who can add/remove members of shared folder
    :ivar team_log.EventTypeArg.shared_folder_change_members_policy: (sharing)
        Changed who can become member of shared folder
    :ivar team_log.EventTypeArg.shared_folder_create: (sharing) Created shared
        folder
    :ivar team_log.EventTypeArg.shared_folder_decline_invitation: (sharing)
        Declined team member's invite to shared folder
    :ivar team_log.EventTypeArg.shared_folder_mount: (sharing) Added shared
        folder to own Dropbox
    :ivar team_log.EventTypeArg.shared_folder_nest: (sharing) Changed parent of
        shared folder
    :ivar team_log.EventTypeArg.shared_folder_transfer_ownership: (sharing)
        Transferred ownership of shared folder to another member
    :ivar team_log.EventTypeArg.shared_folder_unmount: (sharing) Deleted shared
        folder from Dropbox
    :ivar team_log.EventTypeArg.shared_link_add_expiry: (sharing) Added shared
        link expiration date
    :ivar team_log.EventTypeArg.shared_link_change_expiry: (sharing) Changed
        shared link expiration date
    :ivar team_log.EventTypeArg.shared_link_change_visibility: (sharing) Changed
        visibility of shared link
    :ivar team_log.EventTypeArg.shared_link_copy: (sharing) Added file/folder to
        Dropbox from shared link
    :ivar team_log.EventTypeArg.shared_link_create: (sharing) Created shared
        link
    :ivar team_log.EventTypeArg.shared_link_disable: (sharing) Removed shared
        link
    :ivar team_log.EventTypeArg.shared_link_download: (sharing) Downloaded
        file/folder from shared link
    :ivar team_log.EventTypeArg.shared_link_remove_expiry: (sharing) Removed
        shared link expiration date
    :ivar team_log.EventTypeArg.shared_link_settings_add_expiration: (sharing)
        Added an expiration date to the shared link
    :ivar team_log.EventTypeArg.shared_link_settings_add_password: (sharing)
        Added a password to the shared link
    :ivar team_log.EventTypeArg.shared_link_settings_allow_download_disabled:
        (sharing) Disabled downloads
    :ivar team_log.EventTypeArg.shared_link_settings_allow_download_enabled:
        (sharing) Enabled downloads
    :ivar team_log.EventTypeArg.shared_link_settings_change_audience: (sharing)
        Changed the audience of the shared link
    :ivar team_log.EventTypeArg.shared_link_settings_change_expiration:
        (sharing) Changed the expiration date of the shared link
    :ivar team_log.EventTypeArg.shared_link_settings_change_password: (sharing)
        Changed the password of the shared link
    :ivar team_log.EventTypeArg.shared_link_settings_remove_expiration:
        (sharing) Removed the expiration date from the shared link
    :ivar team_log.EventTypeArg.shared_link_settings_remove_password: (sharing)
        Removed the password from the shared link
    :ivar team_log.EventTypeArg.shared_link_share: (sharing) Added members as
        audience of shared link
    :ivar team_log.EventTypeArg.shared_link_view: (sharing) Opened shared link
    :ivar team_log.EventTypeArg.shared_note_opened: (sharing) Opened shared
        Paper doc (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.shmodel_disable_downloads: (sharing) Disabled
        downloads for link (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.shmodel_enable_downloads: (sharing) Enabled
        downloads for link (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.shmodel_group_share: (sharing) Shared link with
        group (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.showcase_access_granted: (showcase) Granted
        access to showcase
    :ivar team_log.EventTypeArg.showcase_add_member: (showcase) Added member to
        showcase
    :ivar team_log.EventTypeArg.showcase_archived: (showcase) Archived showcase
    :ivar team_log.EventTypeArg.showcase_created: (showcase) Created showcase
    :ivar team_log.EventTypeArg.showcase_delete_comment: (showcase) Deleted
        showcase comment
    :ivar team_log.EventTypeArg.showcase_edited: (showcase) Edited showcase
    :ivar team_log.EventTypeArg.showcase_edit_comment: (showcase) Edited
        showcase comment
    :ivar team_log.EventTypeArg.showcase_file_added: (showcase) Added file to
        showcase
    :ivar team_log.EventTypeArg.showcase_file_download: (showcase) Downloaded
        file from showcase
    :ivar team_log.EventTypeArg.showcase_file_removed: (showcase) Removed file
        from showcase
    :ivar team_log.EventTypeArg.showcase_file_view: (showcase) Viewed file in
        showcase
    :ivar team_log.EventTypeArg.showcase_permanently_deleted: (showcase)
        Permanently deleted showcase
    :ivar team_log.EventTypeArg.showcase_post_comment: (showcase) Added showcase
        comment
    :ivar team_log.EventTypeArg.showcase_remove_member: (showcase) Removed
        member from showcase
    :ivar team_log.EventTypeArg.showcase_renamed: (showcase) Renamed showcase
    :ivar team_log.EventTypeArg.showcase_request_access: (showcase) Requested
        access to showcase
    :ivar team_log.EventTypeArg.showcase_resolve_comment: (showcase) Resolved
        showcase comment
    :ivar team_log.EventTypeArg.showcase_restored: (showcase) Unarchived
        showcase
    :ivar team_log.EventTypeArg.showcase_trashed: (showcase) Deleted showcase
    :ivar team_log.EventTypeArg.showcase_trashed_deprecated: (showcase) Deleted
        showcase (old version) (deprecated, replaced by 'Deleted showcase')
    :ivar team_log.EventTypeArg.showcase_unresolve_comment: (showcase)
        Unresolved showcase comment
    :ivar team_log.EventTypeArg.showcase_untrashed: (showcase) Restored showcase
    :ivar team_log.EventTypeArg.showcase_untrashed_deprecated: (showcase)
        Restored showcase (old version) (deprecated, replaced by 'Restored
        showcase')
    :ivar team_log.EventTypeArg.showcase_view: (showcase) Viewed showcase
    :ivar team_log.EventTypeArg.sso_add_cert: (sso) Added X.509 certificate for
        SSO
    :ivar team_log.EventTypeArg.sso_add_login_url: (sso) Added sign-in URL for
        SSO
    :ivar team_log.EventTypeArg.sso_add_logout_url: (sso) Added sign-out URL for
        SSO
    :ivar team_log.EventTypeArg.sso_change_cert: (sso) Changed X.509 certificate
        for SSO
    :ivar team_log.EventTypeArg.sso_change_login_url: (sso) Changed sign-in URL
        for SSO
    :ivar team_log.EventTypeArg.sso_change_logout_url: (sso) Changed sign-out
        URL for SSO
    :ivar team_log.EventTypeArg.sso_change_saml_identity_mode: (sso) Changed
        SAML identity mode for SSO
    :ivar team_log.EventTypeArg.sso_remove_cert: (sso) Removed X.509 certificate
        for SSO
    :ivar team_log.EventTypeArg.sso_remove_login_url: (sso) Removed sign-in URL
        for SSO
    :ivar team_log.EventTypeArg.sso_remove_logout_url: (sso) Removed sign-out
        URL for SSO
    :ivar team_log.EventTypeArg.team_folder_change_status: (team_folders)
        Changed archival status of team folder
    :ivar team_log.EventTypeArg.team_folder_create: (team_folders) Created team
        folder in active status
    :ivar team_log.EventTypeArg.team_folder_downgrade: (team_folders) Downgraded
        team folder to regular shared folder
    :ivar team_log.EventTypeArg.team_folder_permanently_delete: (team_folders)
        Permanently deleted archived team folder
    :ivar team_log.EventTypeArg.team_folder_rename: (team_folders) Renamed
        active/archived team folder
    :ivar team_log.EventTypeArg.team_selective_sync_settings_changed:
        (team_folders) Changed sync default
    :ivar team_log.EventTypeArg.account_capture_change_policy: (team_policies)
        Changed account capture setting on team domain
    :ivar team_log.EventTypeArg.admin_email_reminders_changed: (team_policies)
        Changed admin reminder settings for requests to join the team
    :ivar team_log.EventTypeArg.allow_download_disabled: (team_policies)
        Disabled downloads (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.allow_download_enabled: (team_policies) Enabled
        downloads (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.app_permissions_changed: (team_policies) Changed
        app permissions
    :ivar team_log.EventTypeArg.camera_uploads_policy_changed: (team_policies)
        Changed camera uploads setting for team
    :ivar team_log.EventTypeArg.capture_transcript_policy_changed:
        (team_policies) Changed Capture transcription policy for team
    :ivar team_log.EventTypeArg.classification_change_policy: (team_policies)
        Changed classification policy for team
    :ivar team_log.EventTypeArg.computer_backup_policy_changed: (team_policies)
        Changed computer backup policy for team
    :ivar team_log.EventTypeArg.content_administration_policy_changed:
        (team_policies) Changed content management setting
    :ivar team_log.EventTypeArg.data_placement_restriction_change_policy:
        (team_policies) Set restrictions on data center locations where team
        data resides
    :ivar team_log.EventTypeArg.data_placement_restriction_satisfy_policy:
        (team_policies) Completed restrictions on data center locations where
        team data resides
    :ivar team_log.EventTypeArg.device_approvals_add_exception: (team_policies)
        Added members to device approvals exception list
    :ivar team_log.EventTypeArg.device_approvals_change_desktop_policy:
        (team_policies) Set/removed limit on number of computers member can link
        to team Dropbox account
    :ivar team_log.EventTypeArg.device_approvals_change_mobile_policy:
        (team_policies) Set/removed limit on number of mobile devices member can
        link to team Dropbox account
    :ivar team_log.EventTypeArg.device_approvals_change_overage_action:
        (team_policies) Changed device approvals setting when member is over
        limit
    :ivar team_log.EventTypeArg.device_approvals_change_unlink_action:
        (team_policies) Changed device approvals setting when member unlinks
        approved device
    :ivar team_log.EventTypeArg.device_approvals_remove_exception:
        (team_policies) Removed members from device approvals exception list
    :ivar team_log.EventTypeArg.directory_restrictions_add_members:
        (team_policies) Added members to directory restrictions list
    :ivar team_log.EventTypeArg.directory_restrictions_remove_members:
        (team_policies) Removed members from directory restrictions list
    :ivar team_log.EventTypeArg.dropbox_passwords_policy_changed:
        (team_policies) Changed Dropbox Passwords policy for team
    :ivar team_log.EventTypeArg.email_ingest_policy_changed: (team_policies)
        Changed email to Dropbox policy for team
    :ivar team_log.EventTypeArg.emm_add_exception: (team_policies) Added members
        to EMM exception list
    :ivar team_log.EventTypeArg.emm_change_policy: (team_policies)
        Enabled/disabled enterprise mobility management for members
    :ivar team_log.EventTypeArg.emm_remove_exception: (team_policies) Removed
        members from EMM exception list
    :ivar team_log.EventTypeArg.extended_version_history_change_policy:
        (team_policies) Accepted/opted out of extended version history
    :ivar team_log.EventTypeArg.external_drive_backup_policy_changed:
        (team_policies) Changed external drive backup policy for team
    :ivar team_log.EventTypeArg.file_comments_change_policy: (team_policies)
        Enabled/disabled commenting on team files
    :ivar team_log.EventTypeArg.file_locking_policy_changed: (team_policies)
        Changed file locking policy for team
    :ivar team_log.EventTypeArg.file_provider_migration_policy_changed:
        (team_policies) Changed File Provider Migration policy for team
    :ivar team_log.EventTypeArg.file_requests_change_policy: (team_policies)
        Enabled/disabled file requests
    :ivar team_log.EventTypeArg.file_requests_emails_enabled: (team_policies)
        Enabled file request emails for everyone (deprecated, no longer logged)
    :ivar team_log.EventTypeArg.file_requests_emails_restricted_to_team_only:
        (team_policies) Enabled file request emails for team (deprecated, no
        longer logged)
    :ivar team_log.EventTypeArg.file_transfers_policy_changed: (team_policies)
        Changed file transfers policy for team
    :ivar team_log.EventTypeArg.folder_link_restriction_policy_changed:
        (team_policies) Changed folder link restrictions policy for team
    :ivar team_log.EventTypeArg.google_sso_change_policy: (team_policies)
        Enabled/disabled Google single sign-on for team
    :ivar team_log.EventTypeArg.group_user_management_change_policy:
        (team_policies) Changed who can create groups
    :ivar team_log.EventTypeArg.integration_policy_changed: (team_policies)
        Changed integration policy for team
    :ivar team_log.EventTypeArg.invite_acceptance_email_policy_changed:
        (team_policies) Changed invite accept email policy for team
    :ivar team_log.EventTypeArg.member_requests_change_policy: (team_policies)
        Changed whether users can find team when not invited
    :ivar team_log.EventTypeArg.member_send_invite_policy_changed:
        (team_policies) Changed member send invite policy for team
    :ivar team_log.EventTypeArg.member_space_limits_add_exception:
        (team_policies) Added members to member space limit exception list
    :ivar team_log.EventTypeArg.member_space_limits_change_caps_type_policy:
        (team_policies) Changed member space limit type for team
    :ivar team_log.EventTypeArg.member_space_limits_change_policy:
        (team_policies) Changed team default member space limit
    :ivar team_log.EventTypeArg.member_space_limits_remove_exception:
        (team_policies) Removed members from member space limit exception list
    :ivar team_log.EventTypeArg.member_suggestions_change_policy:
        (team_policies) Enabled/disabled option for team members to suggest
        people to add to team
    :ivar team_log.EventTypeArg.microsoft_office_addin_change_policy:
        (team_policies) Enabled/disabled Microsoft Office add-in
    :ivar team_log.EventTypeArg.network_control_change_policy: (team_policies)
        Enabled/disabled network control
    :ivar team_log.EventTypeArg.paper_change_deployment_policy: (team_policies)
        Changed whether Dropbox Paper, when enabled, is deployed to all members
        or to specific members
    :ivar team_log.EventTypeArg.paper_change_member_link_policy: (team_policies)
        Changed whether non-members can view Paper docs with link (deprecated,
        no longer logged)
    :ivar team_log.EventTypeArg.paper_change_member_policy: (team_policies)
        Changed whether members can share Paper docs outside team, and if docs
        are accessible only by team members or anyone by default
    :ivar team_log.EventTypeArg.paper_change_policy: (team_policies)
        Enabled/disabled Dropbox Paper for team
    :ivar team_log.EventTypeArg.paper_default_folder_policy_changed:
        (team_policies) Changed Paper Default Folder Policy setting for team
    :ivar team_log.EventTypeArg.paper_desktop_policy_changed: (team_policies)
        Enabled/disabled Paper Desktop for team
    :ivar team_log.EventTypeArg.paper_enabled_users_group_addition:
        (team_policies) Added users to Paper-enabled users list
    :ivar team_log.EventTypeArg.paper_enabled_users_group_removal:
        (team_policies) Removed users from Paper-enabled users list
    :ivar team_log.EventTypeArg.password_strength_requirements_change_policy:
        (team_policies) Changed team password strength requirements
    :ivar team_log.EventTypeArg.permanent_delete_change_policy: (team_policies)
        Enabled/disabled ability of team members to permanently delete content
    :ivar team_log.EventTypeArg.reseller_support_change_policy: (team_policies)
        Enabled/disabled reseller support
    :ivar team_log.EventTypeArg.rewind_policy_changed: (team_policies) Changed
        Rewind policy for team
    :ivar team_log.EventTypeArg.send_for_signature_policy_changed:
        (team_policies) Changed send for signature policy for team
    :ivar team_log.EventTypeArg.sharing_change_folder_join_policy:
        (team_policies) Changed whether team members can join shared folders
        owned outside team
    :ivar
        team_log.EventTypeArg.sharing_change_link_allow_change_expiration_policy:
        (team_policies) Changed the allow remove or change expiration policy for
        the links shared outside of the team
    :ivar team_log.EventTypeArg.sharing_change_link_default_expiration_policy:
        (team_policies) Changed the default expiration for the links shared
        outside of the team
    :ivar team_log.EventTypeArg.sharing_change_link_enforce_password_policy:
        (team_policies) Changed the password requirement for the links shared
        outside of the team
    :ivar team_log.EventTypeArg.sharing_change_link_policy: (team_policies)
        Changed whether members can share links outside team, and if links are
        accessible only by team members or anyone by default
    :ivar team_log.EventTypeArg.sharing_change_member_policy: (team_policies)
        Changed whether members can share files/folders outside team
    :ivar team_log.EventTypeArg.showcase_change_download_policy: (team_policies)
        Enabled/disabled downloading files from Dropbox Showcase for team
    :ivar team_log.EventTypeArg.showcase_change_enabled_policy: (team_policies)
        Enabled/disabled Dropbox Showcase for team
    :ivar team_log.EventTypeArg.showcase_change_external_sharing_policy:
        (team_policies) Enabled/disabled sharing Dropbox Showcase externally for
        team
    :ivar team_log.EventTypeArg.smarter_smart_sync_policy_changed:
        (team_policies) Changed automatic Smart Sync setting for team
    :ivar team_log.EventTypeArg.smart_sync_change_policy: (team_policies)
        Changed default Smart Sync setting for team members
    :ivar team_log.EventTypeArg.smart_sync_not_opt_out: (team_policies) Opted
        team into Smart Sync
    :ivar team_log.EventTypeArg.smart_sync_opt_out: (team_policies) Opted team
        out of Smart Sync
    :ivar team_log.EventTypeArg.sso_change_policy: (team_policies) Changed
        single sign-on setting for team
    :ivar team_log.EventTypeArg.team_branding_policy_changed: (team_policies)
        Changed team branding policy for team
    :ivar team_log.EventTypeArg.team_extensions_policy_changed: (team_policies)
        Changed App Integrations setting for team
    :ivar team_log.EventTypeArg.team_selective_sync_policy_changed:
        (team_policies) Enabled/disabled Team Selective Sync for team
    :ivar team_log.EventTypeArg.team_sharing_whitelist_subjects_changed:
        (team_policies) Edited the approved list for sharing externally
    :ivar team_log.EventTypeArg.tfa_add_exception: (team_policies) Added members
        to two factor authentication exception list
    :ivar team_log.EventTypeArg.tfa_change_policy: (team_policies) Changed
        two-step verification setting for team
    :ivar team_log.EventTypeArg.tfa_remove_exception: (team_policies) Removed
        members from two factor authentication exception list
    :ivar team_log.EventTypeArg.two_account_change_policy: (team_policies)
        Enabled/disabled option for members to link personal Dropbox account and
        team account to same computer
    :ivar team_log.EventTypeArg.viewer_info_policy_changed: (team_policies)
        Changed team policy for viewer info
    :ivar team_log.EventTypeArg.watermarking_policy_changed: (team_policies)
        Changed watermarking policy for team
    :ivar team_log.EventTypeArg.web_sessions_change_active_session_limit:
        (team_policies) Changed limit on active sessions per member
    :ivar team_log.EventTypeArg.web_sessions_change_fixed_length_policy:
        (team_policies) Changed how long members can stay signed in to
        Dropbox.com
    :ivar team_log.EventTypeArg.web_sessions_change_idle_length_policy:
        (team_policies) Changed how long team members can be idle while signed
        in to Dropbox.com
    :ivar team_log.EventTypeArg.data_residency_migration_request_successful:
        (team_profile) Requested data residency migration for team data
    :ivar team_log.EventTypeArg.data_residency_migration_request_unsuccessful:
        (team_profile) Request for data residency migration for team data has
        failed
    :ivar team_log.EventTypeArg.team_merge_from: (team_profile) Merged another
        team into this team
    :ivar team_log.EventTypeArg.team_merge_to: (team_profile) Merged this team
        into another team
    :ivar team_log.EventTypeArg.team_profile_add_background: (team_profile)
        Added team background to display on shared link headers
    :ivar team_log.EventTypeArg.team_profile_add_logo: (team_profile) Added team
        logo to display on shared link headers
    :ivar team_log.EventTypeArg.team_profile_change_background: (team_profile)
        Changed team background displayed on shared link headers
    :ivar team_log.EventTypeArg.team_profile_change_default_language:
        (team_profile) Changed default language for team
    :ivar team_log.EventTypeArg.team_profile_change_logo: (team_profile) Changed
        team logo displayed on shared link headers
    :ivar team_log.EventTypeArg.team_profile_change_name: (team_profile) Changed
        team name
    :ivar team_log.EventTypeArg.team_profile_remove_background: (team_profile)
        Removed team background displayed on shared link headers
    :ivar team_log.EventTypeArg.team_profile_remove_logo: (team_profile) Removed
        team logo displayed on shared link headers
    :ivar team_log.EventTypeArg.tfa_add_backup_phone: (tfa) Added backup phone
        for two-step verification
    :ivar team_log.EventTypeArg.tfa_add_security_key: (tfa) Added security key
        for two-step verification
    :ivar team_log.EventTypeArg.tfa_change_backup_phone: (tfa) Changed backup
        phone for two-step verification
    :ivar team_log.EventTypeArg.tfa_change_status: (tfa)
        Enabled/disabled/changed two-step verification setting
    :ivar team_log.EventTypeArg.tfa_remove_backup_phone: (tfa) Removed backup
        phone for two-step verification
    :ivar team_log.EventTypeArg.tfa_remove_security_key: (tfa) Removed security
        key for two-step verification
    :ivar team_log.EventTypeArg.tfa_reset: (tfa) Reset two-step verification for
        team member
    :ivar team_log.EventTypeArg.changed_enterprise_admin_role: (trusted_teams)
        Changed enterprise admin role
    :ivar team_log.EventTypeArg.changed_enterprise_connected_team_status:
        (trusted_teams) Changed enterprise-connected team status
    :ivar team_log.EventTypeArg.ended_enterprise_admin_session: (trusted_teams)
        Ended enterprise admin session
    :ivar team_log.EventTypeArg.ended_enterprise_admin_session_deprecated:
        (trusted_teams) Ended enterprise admin session (deprecated, replaced by
        'Ended enterprise admin session')
    :ivar team_log.EventTypeArg.enterprise_settings_locking: (trusted_teams)
        Changed who can update a setting
    :ivar team_log.EventTypeArg.guest_admin_change_status: (trusted_teams)
        Changed guest team admin status
    :ivar team_log.EventTypeArg.started_enterprise_admin_session:
        (trusted_teams) Started enterprise admin session
    :ivar team_log.EventTypeArg.team_merge_request_accepted: (trusted_teams)
        Accepted a team merge request
    :ivar
        team_log.EventTypeArg.team_merge_request_accepted_shown_to_primary_team:
        (trusted_teams) Accepted a team merge request (deprecated, replaced by
        'Accepted a team merge request')
    :ivar
        team_log.EventTypeArg.team_merge_request_accepted_shown_to_secondary_team:
        (trusted_teams) Accepted a team merge request (deprecated, replaced by
        'Accepted a team merge request')
    :ivar team_log.EventTypeArg.team_merge_request_auto_canceled:
        (trusted_teams) Automatically canceled team merge request
    :ivar team_log.EventTypeArg.team_merge_request_canceled: (trusted_teams)
        Canceled a team merge request
    :ivar
        team_log.EventTypeArg.team_merge_request_canceled_shown_to_primary_team:
        (trusted_teams) Canceled a team merge request (deprecated, replaced by
        'Canceled a team merge request')
    :ivar
        team_log.EventTypeArg.team_merge_request_canceled_shown_to_secondary_team:
        (trusted_teams) Canceled a team merge request (deprecated, replaced by
        'Canceled a team merge request')
    :ivar team_log.EventTypeArg.team_merge_request_expired: (trusted_teams) Team
        merge request expired
    :ivar
        team_log.EventTypeArg.team_merge_request_expired_shown_to_primary_team:
        (trusted_teams) Team merge request expired (deprecated, replaced by
        'Team merge request expired')
    :ivar
        team_log.EventTypeArg.team_merge_request_expired_shown_to_secondary_team:
        (trusted_teams) Team merge request expired (deprecated, replaced by
        'Team merge request expired')
    :ivar
        team_log.EventTypeArg.team_merge_request_rejected_shown_to_primary_team:
        (trusted_teams) Rejected a team merge request (deprecated, no longer
        logged)
    :ivar
        team_log.EventTypeArg.team_merge_request_rejected_shown_to_secondary_team:
        (trusted_teams) Rejected a team merge request (deprecated, no longer
        logged)
    :ivar team_log.EventTypeArg.team_merge_request_reminder: (trusted_teams)
        Sent a team merge request reminder
    :ivar
        team_log.EventTypeArg.team_merge_request_reminder_shown_to_primary_team:
        (trusted_teams) Sent a team merge request reminder (deprecated, replaced
        by 'Sent a team merge request reminder')
    :ivar
        team_log.EventTypeArg.team_merge_request_reminder_shown_to_secondary_team:
        (trusted_teams) Sent a team merge request reminder (deprecated, replaced
        by 'Sent a team merge request reminder')
    :ivar team_log.EventTypeArg.team_merge_request_revoked: (trusted_teams)
        Canceled the team merge
    :ivar team_log.EventTypeArg.team_merge_request_sent_shown_to_primary_team:
        (trusted_teams) Requested to merge their Dropbox team into yours
    :ivar team_log.EventTypeArg.team_merge_request_sent_shown_to_secondary_team:
        (trusted_teams) Requested to merge your team into another Dropbox team
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    admin_alerting_alert_state_changed = None
    # Attribute is overwritten below the class definition
    admin_alerting_changed_alert_config = None
    # Attribute is overwritten below the class definition
    admin_alerting_triggered_alert = None
    # Attribute is overwritten below the class definition
    app_blocked_by_permissions = None
    # Attribute is overwritten below the class definition
    app_link_team = None
    # Attribute is overwritten below the class definition
    app_link_user = None
    # Attribute is overwritten below the class definition
    app_unlink_team = None
    # Attribute is overwritten below the class definition
    app_unlink_user = None
    # Attribute is overwritten below the class definition
    integration_connected = None
    # Attribute is overwritten below the class definition
    integration_disconnected = None
    # Attribute is overwritten below the class definition
    file_add_comment = None
    # Attribute is overwritten below the class definition
    file_change_comment_subscription = None
    # Attribute is overwritten below the class definition
    file_delete_comment = None
    # Attribute is overwritten below the class definition
    file_edit_comment = None
    # Attribute is overwritten below the class definition
    file_like_comment = None
    # Attribute is overwritten below the class definition
    file_resolve_comment = None
    # Attribute is overwritten below the class definition
    file_unlike_comment = None
    # Attribute is overwritten below the class definition
    file_unresolve_comment = None
    # Attribute is overwritten below the class definition
    governance_policy_add_folders = None
    # Attribute is overwritten below the class definition
    governance_policy_add_folder_failed = None
    # Attribute is overwritten below the class definition
    governance_policy_content_disposed = None
    # Attribute is overwritten below the class definition
    governance_policy_create = None
    # Attribute is overwritten below the class definition
    governance_policy_delete = None
    # Attribute is overwritten below the class definition
    governance_policy_edit_details = None
    # Attribute is overwritten below the class definition
    governance_policy_edit_duration = None
    # Attribute is overwritten below the class definition
    governance_policy_export_created = None
    # Attribute is overwritten below the class definition
    governance_policy_export_removed = None
    # Attribute is overwritten below the class definition
    governance_policy_remove_folders = None
    # Attribute is overwritten below the class definition
    governance_policy_report_created = None
    # Attribute is overwritten below the class definition
    governance_policy_zip_part_downloaded = None
    # Attribute is overwritten below the class definition
    legal_holds_activate_a_hold = None
    # Attribute is overwritten below the class definition
    legal_holds_add_members = None
    # Attribute is overwritten below the class definition
    legal_holds_change_hold_details = None
    # Attribute is overwritten below the class definition
    legal_holds_change_hold_name = None
    # Attribute is overwritten below the class definition
    legal_holds_export_a_hold = None
    # Attribute is overwritten below the class definition
    legal_holds_export_cancelled = None
    # Attribute is overwritten below the class definition
    legal_holds_export_downloaded = None
    # Attribute is overwritten below the class definition
    legal_holds_export_removed = None
    # Attribute is overwritten below the class definition
    legal_holds_release_a_hold = None
    # Attribute is overwritten below the class definition
    legal_holds_remove_members = None
    # Attribute is overwritten below the class definition
    legal_holds_report_a_hold = None
    # Attribute is overwritten below the class definition
    device_change_ip_desktop = None
    # Attribute is overwritten below the class definition
    device_change_ip_mobile = None
    # Attribute is overwritten below the class definition
    device_change_ip_web = None
    # Attribute is overwritten below the class definition
    device_delete_on_unlink_fail = None
    # Attribute is overwritten below the class definition
    device_delete_on_unlink_success = None
    # Attribute is overwritten below the class definition
    device_link_fail = None
    # Attribute is overwritten below the class definition
    device_link_success = None
    # Attribute is overwritten below the class definition
    device_management_disabled = None
    # Attribute is overwritten below the class definition
    device_management_enabled = None
    # Attribute is overwritten below the class definition
    device_sync_backup_status_changed = None
    # Attribute is overwritten below the class definition
    device_unlink = None
    # Attribute is overwritten below the class definition
    dropbox_passwords_exported = None
    # Attribute is overwritten below the class definition
    dropbox_passwords_new_device_enrolled = None
    # Attribute is overwritten below the class definition
    emm_refresh_auth_token = None
    # Attribute is overwritten below the class definition
    external_drive_backup_eligibility_status_checked = None
    # Attribute is overwritten below the class definition
    external_drive_backup_status_changed = None
    # Attribute is overwritten below the class definition
    account_capture_change_availability = None
    # Attribute is overwritten below the class definition
    account_capture_migrate_account = None
    # Attribute is overwritten below the class definition
    account_capture_notification_emails_sent = None
    # Attribute is overwritten below the class definition
    account_capture_relinquish_account = None
    # Attribute is overwritten below the class definition
    disabled_domain_invites = None
    # Attribute is overwritten below the class definition
    domain_invites_approve_request_to_join_team = None
    # Attribute is overwritten below the class definition
    domain_invites_decline_request_to_join_team = None
    # Attribute is overwritten below the class definition
    domain_invites_email_existing_users = None
    # Attribute is overwritten below the class definition
    domain_invites_request_to_join_team = None
    # Attribute is overwritten below the class definition
    domain_invites_set_invite_new_user_pref_to_no = None
    # Attribute is overwritten below the class definition
    domain_invites_set_invite_new_user_pref_to_yes = None
    # Attribute is overwritten below the class definition
    domain_verification_add_domain_fail = None
    # Attribute is overwritten below the class definition
    domain_verification_add_domain_success = None
    # Attribute is overwritten below the class definition
    domain_verification_remove_domain = None
    # Attribute is overwritten below the class definition
    enabled_domain_invites = None
    # Attribute is overwritten below the class definition
    apply_naming_convention = None
    # Attribute is overwritten below the class definition
    create_folder = None
    # Attribute is overwritten below the class definition
    file_add = None
    # Attribute is overwritten below the class definition
    file_copy = None
    # Attribute is overwritten below the class definition
    file_delete = None
    # Attribute is overwritten below the class definition
    file_download = None
    # Attribute is overwritten below the class definition
    file_edit = None
    # Attribute is overwritten below the class definition
    file_get_copy_reference = None
    # Attribute is overwritten below the class definition
    file_locking_lock_status_changed = None
    # Attribute is overwritten below the class definition
    file_move = None
    # Attribute is overwritten below the class definition
    file_permanently_delete = None
    # Attribute is overwritten below the class definition
    file_preview = None
    # Attribute is overwritten below the class definition
    file_rename = None
    # Attribute is overwritten below the class definition
    file_restore = None
    # Attribute is overwritten below the class definition
    file_revert = None
    # Attribute is overwritten below the class definition
    file_rollback_changes = None
    # Attribute is overwritten below the class definition
    file_save_copy_reference = None
    # Attribute is overwritten below the class definition
    folder_overview_description_changed = None
    # Attribute is overwritten below the class definition
    folder_overview_item_pinned = None
    # Attribute is overwritten below the class definition
    folder_overview_item_unpinned = None
    # Attribute is overwritten below the class definition
    object_label_added = None
    # Attribute is overwritten below the class definition
    object_label_removed = None
    # Attribute is overwritten below the class definition
    object_label_updated_value = None
    # Attribute is overwritten below the class definition
    organize_folder_with_tidy = None
    # Attribute is overwritten below the class definition
    rewind_folder = None
    # Attribute is overwritten below the class definition
    undo_naming_convention = None
    # Attribute is overwritten below the class definition
    undo_organize_folder_with_tidy = None
    # Attribute is overwritten below the class definition
    user_tags_added = None
    # Attribute is overwritten below the class definition
    user_tags_removed = None
    # Attribute is overwritten below the class definition
    email_ingest_receive_file = None
    # Attribute is overwritten below the class definition
    file_request_change = None
    # Attribute is overwritten below the class definition
    file_request_close = None
    # Attribute is overwritten below the class definition
    file_request_create = None
    # Attribute is overwritten below the class definition
    file_request_delete = None
    # Attribute is overwritten below the class definition
    file_request_receive_file = None
    # Attribute is overwritten below the class definition
    group_add_external_id = None
    # Attribute is overwritten below the class definition
    group_add_member = None
    # Attribute is overwritten below the class definition
    group_change_external_id = None
    # Attribute is overwritten below the class definition
    group_change_management_type = None
    # Attribute is overwritten below the class definition
    group_change_member_role = None
    # Attribute is overwritten below the class definition
    group_create = None
    # Attribute is overwritten below the class definition
    group_delete = None
    # Attribute is overwritten below the class definition
    group_description_updated = None
    # Attribute is overwritten below the class definition
    group_join_policy_updated = None
    # Attribute is overwritten below the class definition
    group_moved = None
    # Attribute is overwritten below the class definition
    group_remove_external_id = None
    # Attribute is overwritten below the class definition
    group_remove_member = None
    # Attribute is overwritten below the class definition
    group_rename = None
    # Attribute is overwritten below the class definition
    account_lock_or_unlocked = None
    # Attribute is overwritten below the class definition
    emm_error = None
    # Attribute is overwritten below the class definition
    guest_admin_signed_in_via_trusted_teams = None
    # Attribute is overwritten below the class definition
    guest_admin_signed_out_via_trusted_teams = None
    # Attribute is overwritten below the class definition
    login_fail = None
    # Attribute is overwritten below the class definition
    login_success = None
    # Attribute is overwritten below the class definition
    logout = None
    # Attribute is overwritten below the class definition
    reseller_support_session_end = None
    # Attribute is overwritten below the class definition
    reseller_support_session_start = None
    # Attribute is overwritten below the class definition
    sign_in_as_session_end = None
    # Attribute is overwritten below the class definition
    sign_in_as_session_start = None
    # Attribute is overwritten below the class definition
    sso_error = None
    # Attribute is overwritten below the class definition
    create_team_invite_link = None
    # Attribute is overwritten below the class definition
    delete_team_invite_link = None
    # Attribute is overwritten below the class definition
    member_add_external_id = None
    # Attribute is overwritten below the class definition
    member_add_name = None
    # Attribute is overwritten below the class definition
    member_change_admin_role = None
    # Attribute is overwritten below the class definition
    member_change_email = None
    # Attribute is overwritten below the class definition
    member_change_external_id = None
    # Attribute is overwritten below the class definition
    member_change_membership_type = None
    # Attribute is overwritten below the class definition
    member_change_name = None
    # Attribute is overwritten below the class definition
    member_change_reseller_role = None
    # Attribute is overwritten below the class definition
    member_change_status = None
    # Attribute is overwritten below the class definition
    member_delete_manual_contacts = None
    # Attribute is overwritten below the class definition
    member_delete_profile_photo = None
    # Attribute is overwritten below the class definition
    member_permanently_delete_account_contents = None
    # Attribute is overwritten below the class definition
    member_remove_external_id = None
    # Attribute is overwritten below the class definition
    member_set_profile_photo = None
    # Attribute is overwritten below the class definition
    member_space_limits_add_custom_quota = None
    # Attribute is overwritten below the class definition
    member_space_limits_change_custom_quota = None
    # Attribute is overwritten below the class definition
    member_space_limits_change_status = None
    # Attribute is overwritten below the class definition
    member_space_limits_remove_custom_quota = None
    # Attribute is overwritten below the class definition
    member_suggest = None
    # Attribute is overwritten below the class definition
    member_transfer_account_contents = None
    # Attribute is overwritten below the class definition
    pending_secondary_email_added = None
    # Attribute is overwritten below the class definition
    secondary_email_deleted = None
    # Attribute is overwritten below the class definition
    secondary_email_verified = None
    # Attribute is overwritten below the class definition
    secondary_mails_policy_changed = None
    # Attribute is overwritten below the class definition
    binder_add_page = None
    # Attribute is overwritten below the class definition
    binder_add_section = None
    # Attribute is overwritten below the class definition
    binder_remove_page = None
    # Attribute is overwritten below the class definition
    binder_remove_section = None
    # Attribute is overwritten below the class definition
    binder_rename_page = None
    # Attribute is overwritten below the class definition
    binder_rename_section = None
    # Attribute is overwritten below the class definition
    binder_reorder_page = None
    # Attribute is overwritten below the class definition
    binder_reorder_section = None
    # Attribute is overwritten below the class definition
    paper_content_add_member = None
    # Attribute is overwritten below the class definition
    paper_content_add_to_folder = None
    # Attribute is overwritten below the class definition
    paper_content_archive = None
    # Attribute is overwritten below the class definition
    paper_content_create = None
    # Attribute is overwritten below the class definition
    paper_content_permanently_delete = None
    # Attribute is overwritten below the class definition
    paper_content_remove_from_folder = None
    # Attribute is overwritten below the class definition
    paper_content_remove_member = None
    # Attribute is overwritten below the class definition
    paper_content_rename = None
    # Attribute is overwritten below the class definition
    paper_content_restore = None
    # Attribute is overwritten below the class definition
    paper_doc_add_comment = None
    # Attribute is overwritten below the class definition
    paper_doc_change_member_role = None
    # Attribute is overwritten below the class definition
    paper_doc_change_sharing_policy = None
    # Attribute is overwritten below the class definition
    paper_doc_change_subscription = None
    # Attribute is overwritten below the class definition
    paper_doc_deleted = None
    # Attribute is overwritten below the class definition
    paper_doc_delete_comment = None
    # Attribute is overwritten below the class definition
    paper_doc_download = None
    # Attribute is overwritten below the class definition
    paper_doc_edit = None
    # Attribute is overwritten below the class definition
    paper_doc_edit_comment = None
    # Attribute is overwritten below the class definition
    paper_doc_followed = None
    # Attribute is overwritten below the class definition
    paper_doc_mention = None
    # Attribute is overwritten below the class definition
    paper_doc_ownership_changed = None
    # Attribute is overwritten below the class definition
    paper_doc_request_access = None
    # Attribute is overwritten below the class definition
    paper_doc_resolve_comment = None
    # Attribute is overwritten below the class definition
    paper_doc_revert = None
    # Attribute is overwritten below the class definition
    paper_doc_slack_share = None
    # Attribute is overwritten below the class definition
    paper_doc_team_invite = None
    # Attribute is overwritten below the class definition
    paper_doc_trashed = None
    # Attribute is overwritten below the class definition
    paper_doc_unresolve_comment = None
    # Attribute is overwritten below the class definition
    paper_doc_untrashed = None
    # Attribute is overwritten below the class definition
    paper_doc_view = None
    # Attribute is overwritten below the class definition
    paper_external_view_allow = None
    # Attribute is overwritten below the class definition
    paper_external_view_default_team = None
    # Attribute is overwritten below the class definition
    paper_external_view_forbid = None
    # Attribute is overwritten below the class definition
    paper_folder_change_subscription = None
    # Attribute is overwritten below the class definition
    paper_folder_deleted = None
    # Attribute is overwritten below the class definition
    paper_folder_followed = None
    # Attribute is overwritten below the class definition
    paper_folder_team_invite = None
    # Attribute is overwritten below the class definition
    paper_published_link_change_permission = None
    # Attribute is overwritten below the class definition
    paper_published_link_create = None
    # Attribute is overwritten below the class definition
    paper_published_link_disabled = None
    # Attribute is overwritten below the class definition
    paper_published_link_view = None
    # Attribute is overwritten below the class definition
    password_change = None
    # Attribute is overwritten below the class definition
    password_reset = None
    # Attribute is overwritten below the class definition
    password_reset_all = None
    # Attribute is overwritten below the class definition
    classification_create_report = None
    # Attribute is overwritten below the class definition
    classification_create_report_fail = None
    # Attribute is overwritten below the class definition
    emm_create_exceptions_report = None
    # Attribute is overwritten below the class definition
    emm_create_usage_report = None
    # Attribute is overwritten below the class definition
    export_members_report = None
    # Attribute is overwritten below the class definition
    export_members_report_fail = None
    # Attribute is overwritten below the class definition
    external_sharing_create_report = None
    # Attribute is overwritten below the class definition
    external_sharing_report_failed = None
    # Attribute is overwritten below the class definition
    no_expiration_link_gen_create_report = None
    # Attribute is overwritten below the class definition
    no_expiration_link_gen_report_failed = None
    # Attribute is overwritten below the class definition
    no_password_link_gen_create_report = None
    # Attribute is overwritten below the class definition
    no_password_link_gen_report_failed = None
    # Attribute is overwritten below the class definition
    no_password_link_view_create_report = None
    # Attribute is overwritten below the class definition
    no_password_link_view_report_failed = None
    # Attribute is overwritten below the class definition
    outdated_link_view_create_report = None
    # Attribute is overwritten below the class definition
    outdated_link_view_report_failed = None
    # Attribute is overwritten below the class definition
    paper_admin_export_start = None
    # Attribute is overwritten below the class definition
    smart_sync_create_admin_privilege_report = None
    # Attribute is overwritten below the class definition
    team_activity_create_report = None
    # Attribute is overwritten below the class definition
    team_activity_create_report_fail = None
    # Attribute is overwritten below the class definition
    collection_share = None
    # Attribute is overwritten below the class definition
    file_transfers_file_add = None
    # Attribute is overwritten below the class definition
    file_transfers_transfer_delete = None
    # Attribute is overwritten below the class definition
    file_transfers_transfer_download = None
    # Attribute is overwritten below the class definition
    file_transfers_transfer_send = None
    # Attribute is overwritten below the class definition
    file_transfers_transfer_view = None
    # Attribute is overwritten below the class definition
    note_acl_invite_only = None
    # Attribute is overwritten below the class definition
    note_acl_link = None
    # Attribute is overwritten below the class definition
    note_acl_team_link = None
    # Attribute is overwritten below the class definition
    note_shared = None
    # Attribute is overwritten below the class definition
    note_share_receive = None
    # Attribute is overwritten below the class definition
    open_note_shared = None
    # Attribute is overwritten below the class definition
    sf_add_group = None
    # Attribute is overwritten below the class definition
    sf_allow_non_members_to_view_shared_links = None
    # Attribute is overwritten below the class definition
    sf_external_invite_warn = None
    # Attribute is overwritten below the class definition
    sf_fb_invite = None
    # Attribute is overwritten below the class definition
    sf_fb_invite_change_role = None
    # Attribute is overwritten below the class definition
    sf_fb_uninvite = None
    # Attribute is overwritten below the class definition
    sf_invite_group = None
    # Attribute is overwritten below the class definition
    sf_team_grant_access = None
    # Attribute is overwritten below the class definition
    sf_team_invite = None
    # Attribute is overwritten below the class definition
    sf_team_invite_change_role = None
    # Attribute is overwritten below the class definition
    sf_team_join = None
    # Attribute is overwritten below the class definition
    sf_team_join_from_oob_link = None
    # Attribute is overwritten below the class definition
    sf_team_uninvite = None
    # Attribute is overwritten below the class definition
    shared_content_add_invitees = None
    # Attribute is overwritten below the class definition
    shared_content_add_link_expiry = None
    # Attribute is overwritten below the class definition
    shared_content_add_link_password = None
    # Attribute is overwritten below the class definition
    shared_content_add_member = None
    # Attribute is overwritten below the class definition
    shared_content_change_downloads_policy = None
    # Attribute is overwritten below the class definition
    shared_content_change_invitee_role = None
    # Attribute is overwritten below the class definition
    shared_content_change_link_audience = None
    # Attribute is overwritten below the class definition
    shared_content_change_link_expiry = None
    # Attribute is overwritten below the class definition
    shared_content_change_link_password = None
    # Attribute is overwritten below the class definition
    shared_content_change_member_role = None
    # Attribute is overwritten below the class definition
    shared_content_change_viewer_info_policy = None
    # Attribute is overwritten below the class definition
    shared_content_claim_invitation = None
    # Attribute is overwritten below the class definition
    shared_content_copy = None
    # Attribute is overwritten below the class definition
    shared_content_download = None
    # Attribute is overwritten below the class definition
    shared_content_relinquish_membership = None
    # Attribute is overwritten below the class definition
    shared_content_remove_invitees = None
    # Attribute is overwritten below the class definition
    shared_content_remove_link_expiry = None
    # Attribute is overwritten below the class definition
    shared_content_remove_link_password = None
    # Attribute is overwritten below the class definition
    shared_content_remove_member = None
    # Attribute is overwritten below the class definition
    shared_content_request_access = None
    # Attribute is overwritten below the class definition
    shared_content_restore_invitees = None
    # Attribute is overwritten below the class definition
    shared_content_restore_member = None
    # Attribute is overwritten below the class definition
    shared_content_unshare = None
    # Attribute is overwritten below the class definition
    shared_content_view = None
    # Attribute is overwritten below the class definition
    shared_folder_change_link_policy = None
    # Attribute is overwritten below the class definition
    shared_folder_change_members_inheritance_policy = None
    # Attribute is overwritten below the class definition
    shared_folder_change_members_management_policy = None
    # Attribute is overwritten below the class definition
    shared_folder_change_members_policy = None
    # Attribute is overwritten below the class definition
    shared_folder_create = None
    # Attribute is overwritten below the class definition
    shared_folder_decline_invitation = None
    # Attribute is overwritten below the class definition
    shared_folder_mount = None
    # Attribute is overwritten below the class definition
    shared_folder_nest = None
    # Attribute is overwritten below the class definition
    shared_folder_transfer_ownership = None
    # Attribute is overwritten below the class definition
    shared_folder_unmount = None
    # Attribute is overwritten below the class definition
    shared_link_add_expiry = None
    # Attribute is overwritten below the class definition
    shared_link_change_expiry = None
    # Attribute is overwritten below the class definition
    shared_link_change_visibility = None
    # Attribute is overwritten below the class definition
    shared_link_copy = None
    # Attribute is overwritten below the class definition
    shared_link_create = None
    # Attribute is overwritten below the class definition
    shared_link_disable = None
    # Attribute is overwritten below the class definition
    shared_link_download = None
    # Attribute is overwritten below the class definition
    shared_link_remove_expiry = None
    # Attribute is overwritten below the class definition
    shared_link_settings_add_expiration = None
    # Attribute is overwritten below the class definition
    shared_link_settings_add_password = None
    # Attribute is overwritten below the class definition
    shared_link_settings_allow_download_disabled = None
    # Attribute is overwritten below the class definition
    shared_link_settings_allow_download_enabled = None
    # Attribute is overwritten below the class definition
    shared_link_settings_change_audience = None
    # Attribute is overwritten below the class definition
    shared_link_settings_change_expiration = None
    # Attribute is overwritten below the class definition
    shared_link_settings_change_password = None
    # Attribute is overwritten below the class definition
    shared_link_settings_remove_expiration = None
    # Attribute is overwritten below the class definition
    shared_link_settings_remove_password = None
    # Attribute is overwritten below the class definition
    shared_link_share = None
    # Attribute is overwritten below the class definition
    shared_link_view = None
    # Attribute is overwritten below the class definition
    shared_note_opened = None
    # Attribute is overwritten below the class definition
    shmodel_disable_downloads = None
    # Attribute is overwritten below the class definition
    shmodel_enable_downloads = None
    # Attribute is overwritten below the class definition
    shmodel_group_share = None
    # Attribute is overwritten below the class definition
    showcase_access_granted = None
    # Attribute is overwritten below the class definition
    showcase_add_member = None
    # Attribute is overwritten below the class definition
    showcase_archived = None
    # Attribute is overwritten below the class definition
    showcase_created = None
    # Attribute is overwritten below the class definition
    showcase_delete_comment = None
    # Attribute is overwritten below the class definition
    showcase_edited = None
    # Attribute is overwritten below the class definition
    showcase_edit_comment = None
    # Attribute is overwritten below the class definition
    showcase_file_added = None
    # Attribute is overwritten below the class definition
    showcase_file_download = None
    # Attribute is overwritten below the class definition
    showcase_file_removed = None
    # Attribute is overwritten below the class definition
    showcase_file_view = None
    # Attribute is overwritten below the class definition
    showcase_permanently_deleted = None
    # Attribute is overwritten below the class definition
    showcase_post_comment = None
    # Attribute is overwritten below the class definition
    showcase_remove_member = None
    # Attribute is overwritten below the class definition
    showcase_renamed = None
    # Attribute is overwritten below the class definition
    showcase_request_access = None
    # Attribute is overwritten below the class definition
    showcase_resolve_comment = None
    # Attribute is overwritten below the class definition
    showcase_restored = None
    # Attribute is overwritten below the class definition
    showcase_trashed = None
    # Attribute is overwritten below the class definition
    showcase_trashed_deprecated = None
    # Attribute is overwritten below the class definition
    showcase_unresolve_comment = None
    # Attribute is overwritten below the class definition
    showcase_untrashed = None
    # Attribute is overwritten below the class definition
    showcase_untrashed_deprecated = None
    # Attribute is overwritten below the class definition
    showcase_view = None
    # Attribute is overwritten below the class definition
    sso_add_cert = None
    # Attribute is overwritten below the class definition
    sso_add_login_url = None
    # Attribute is overwritten below the class definition
    sso_add_logout_url = None
    # Attribute is overwritten below the class definition
    sso_change_cert = None
    # Attribute is overwritten below the class definition
    sso_change_login_url = None
    # Attribute is overwritten below the class definition
    sso_change_logout_url = None
    # Attribute is overwritten below the class definition
    sso_change_saml_identity_mode = None
    # Attribute is overwritten below the class definition
    sso_remove_cert = None
    # Attribute is overwritten below the class definition
    sso_remove_login_url = None
    # Attribute is overwritten below the class definition
    sso_remove_logout_url = None
    # Attribute is overwritten below the class definition
    team_folder_change_status = None
    # Attribute is overwritten below the class definition
    team_folder_create = None
    # Attribute is overwritten below the class definition
    team_folder_downgrade = None
    # Attribute is overwritten below the class definition
    team_folder_permanently_delete = None
    # Attribute is overwritten below the class definition
    team_folder_rename = None
    # Attribute is overwritten below the class definition
    team_selective_sync_settings_changed = None
    # Attribute is overwritten below the class definition
    account_capture_change_policy = None
    # Attribute is overwritten below the class definition
    admin_email_reminders_changed = None
    # Attribute is overwritten below the class definition
    allow_download_disabled = None
    # Attribute is overwritten below the class definition
    allow_download_enabled = None
    # Attribute is overwritten below the class definition
    app_permissions_changed = None
    # Attribute is overwritten below the class definition
    camera_uploads_policy_changed = None
    # Attribute is overwritten below the class definition
    capture_transcript_policy_changed = None
    # Attribute is overwritten below the class definition
    classification_change_policy = None
    # Attribute is overwritten below the class definition
    computer_backup_policy_changed = None
    # Attribute is overwritten below the class definition
    content_administration_policy_changed = None
    # Attribute is overwritten below the class definition
    data_placement_restriction_change_policy = None
    # Attribute is overwritten below the class definition
    data_placement_restriction_satisfy_policy = None
    # Attribute is overwritten below the class definition
    device_approvals_add_exception = None
    # Attribute is overwritten below the class definition
    device_approvals_change_desktop_policy = None
    # Attribute is overwritten below the class definition
    device_approvals_change_mobile_policy = None
    # Attribute is overwritten below the class definition
    device_approvals_change_overage_action = None
    # Attribute is overwritten below the class definition
    device_approvals_change_unlink_action = None
    # Attribute is overwritten below the class definition
    device_approvals_remove_exception = None
    # Attribute is overwritten below the class definition
    directory_restrictions_add_members = None
    # Attribute is overwritten below the class definition
    directory_restrictions_remove_members = None
    # Attribute is overwritten below the class definition
    dropbox_passwords_policy_changed = None
    # Attribute is overwritten below the class definition
    email_ingest_policy_changed = None
    # Attribute is overwritten below the class definition
    emm_add_exception = None
    # Attribute is overwritten below the class definition
    emm_change_policy = None
    # Attribute is overwritten below the class definition
    emm_remove_exception = None
    # Attribute is overwritten below the class definition
    extended_version_history_change_policy = None
    # Attribute is overwritten below the class definition
    external_drive_backup_policy_changed = None
    # Attribute is overwritten below the class definition
    file_comments_change_policy = None
    # Attribute is overwritten below the class definition
    file_locking_policy_changed = None
    # Attribute is overwritten below the class definition
    file_provider_migration_policy_changed = None
    # Attribute is overwritten below the class definition
    file_requests_change_policy = None
    # Attribute is overwritten below the class definition
    file_requests_emails_enabled = None
    # Attribute is overwritten below the class definition
    file_requests_emails_restricted_to_team_only = None
    # Attribute is overwritten below the class definition
    file_transfers_policy_changed = None
    # Attribute is overwritten below the class definition
    folder_link_restriction_policy_changed = None
    # Attribute is overwritten below the class definition
    google_sso_change_policy = None
    # Attribute is overwritten below the class definition
    group_user_management_change_policy = None
    # Attribute is overwritten below the class definition
    integration_policy_changed = None
    # Attribute is overwritten below the class definition
    invite_acceptance_email_policy_changed = None
    # Attribute is overwritten below the class definition
    member_requests_change_policy = None
    # Attribute is overwritten below the class definition
    member_send_invite_policy_changed = None
    # Attribute is overwritten below the class definition
    member_space_limits_add_exception = None
    # Attribute is overwritten below the class definition
    member_space_limits_change_caps_type_policy = None
    # Attribute is overwritten below the class definition
    member_space_limits_change_policy = None
    # Attribute is overwritten below the class definition
    member_space_limits_remove_exception = None
    # Attribute is overwritten below the class definition
    member_suggestions_change_policy = None
    # Attribute is overwritten below the class definition
    microsoft_office_addin_change_policy = None
    # Attribute is overwritten below the class definition
    network_control_change_policy = None
    # Attribute is overwritten below the class definition
    paper_change_deployment_policy = None
    # Attribute is overwritten below the class definition
    paper_change_member_link_policy = None
    # Attribute is overwritten below the class definition
    paper_change_member_policy = None
    # Attribute is overwritten below the class definition
    paper_change_policy = None
    # Attribute is overwritten below the class definition
    paper_default_folder_policy_changed = None
    # Attribute is overwritten below the class definition
    paper_desktop_policy_changed = None
    # Attribute is overwritten below the class definition
    paper_enabled_users_group_addition = None
    # Attribute is overwritten below the class definition
    paper_enabled_users_group_removal = None
    # Attribute is overwritten below the class definition
    password_strength_requirements_change_policy = None
    # Attribute is overwritten below the class definition
    permanent_delete_change_policy = None
    # Attribute is overwritten below the class definition
    reseller_support_change_policy = None
    # Attribute is overwritten below the class definition
    rewind_policy_changed = None
    # Attribute is overwritten below the class definition
    send_for_signature_policy_changed = None
    # Attribute is overwritten below the class definition
    sharing_change_folder_join_policy = None
    # Attribute is overwritten below the class definition
    sharing_change_link_allow_change_expiration_policy = None
    # Attribute is overwritten below the class definition
    sharing_change_link_default_expiration_policy = None
    # Attribute is overwritten below the class definition
    sharing_change_link_enforce_password_policy = None
    # Attribute is overwritten below the class definition
    sharing_change_link_policy = None
    # Attribute is overwritten below the class definition
    sharing_change_member_policy = None
    # Attribute is overwritten below the class definition
    showcase_change_download_policy = None
    # Attribute is overwritten below the class definition
    showcase_change_enabled_policy = None
    # Attribute is overwritten below the class definition
    showcase_change_external_sharing_policy = None
    # Attribute is overwritten below the class definition
    smarter_smart_sync_policy_changed = None
    # Attribute is overwritten below the class definition
    smart_sync_change_policy = None
    # Attribute is overwritten below the class definition
    smart_sync_not_opt_out = None
    # Attribute is overwritten below the class definition
    smart_sync_opt_out = None
    # Attribute is overwritten below the class definition
    sso_change_policy = None
    # Attribute is overwritten below the class definition
    team_branding_policy_changed = None
    # Attribute is overwritten below the class definition
    team_extensions_policy_changed = None
    # Attribute is overwritten below the class definition
    team_selective_sync_policy_changed = None
    # Attribute is overwritten below the class definition
    team_sharing_whitelist_subjects_changed = None
    # Attribute is overwritten below the class definition
    tfa_add_exception = None
    # Attribute is overwritten below the class definition
    tfa_change_policy = None
    # Attribute is overwritten below the class definition
    tfa_remove_exception = None
    # Attribute is overwritten below the class definition
    two_account_change_policy = None
    # Attribute is overwritten below the class definition
    viewer_info_policy_changed = None
    # Attribute is overwritten below the class definition
    watermarking_policy_changed = None
    # Attribute is overwritten below the class definition
    web_sessions_change_active_session_limit = None
    # Attribute is overwritten below the class definition
    web_sessions_change_fixed_length_policy = None
    # Attribute is overwritten below the class definition
    web_sessions_change_idle_length_policy = None
    # Attribute is overwritten below the class definition
    data_residency_migration_request_successful = None
    # Attribute is overwritten below the class definition
    data_residency_migration_request_unsuccessful = None
    # Attribute is overwritten below the class definition
    team_merge_from = None
    # Attribute is overwritten below the class definition
    team_merge_to = None
    # Attribute is overwritten below the class definition
    team_profile_add_background = None
    # Attribute is overwritten below the class definition
    team_profile_add_logo = None
    # Attribute is overwritten below the class definition
    team_profile_change_background = None
    # Attribute is overwritten below the class definition
    team_profile_change_default_language = None
    # Attribute is overwritten below the class definition
    team_profile_change_logo = None
    # Attribute is overwritten below the class definition
    team_profile_change_name = None
    # Attribute is overwritten below the class definition
    team_profile_remove_background = None
    # Attribute is overwritten below the class definition
    team_profile_remove_logo = None
    # Attribute is overwritten below the class definition
    tfa_add_backup_phone = None
    # Attribute is overwritten below the class definition
    tfa_add_security_key = None
    # Attribute is overwritten below the class definition
    tfa_change_backup_phone = None
    # Attribute is overwritten below the class definition
    tfa_change_status = None
    # Attribute is overwritten below the class definition
    tfa_remove_backup_phone = None
    # Attribute is overwritten below the class definition
    tfa_remove_security_key = None
    # Attribute is overwritten below the class definition
    tfa_reset = None
    # Attribute is overwritten below the class definition
    changed_enterprise_admin_role = None
    # Attribute is overwritten below the class definition
    changed_enterprise_connected_team_status = None
    # Attribute is overwritten below the class definition
    ended_enterprise_admin_session = None
    # Attribute is overwritten below the class definition
    ended_enterprise_admin_session_deprecated = None
    # Attribute is overwritten below the class definition
    enterprise_settings_locking = None
    # Attribute is overwritten below the class definition
    guest_admin_change_status = None
    # Attribute is overwritten below the class definition
    started_enterprise_admin_session = None
    # Attribute is overwritten below the class definition
    team_merge_request_accepted = None
    # Attribute is overwritten below the class definition
    team_merge_request_accepted_shown_to_primary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_accepted_shown_to_secondary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_auto_canceled = None
    # Attribute is overwritten below the class definition
    team_merge_request_canceled = None
    # Attribute is overwritten below the class definition
    team_merge_request_canceled_shown_to_primary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_canceled_shown_to_secondary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_expired = None
    # Attribute is overwritten below the class definition
    team_merge_request_expired_shown_to_primary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_expired_shown_to_secondary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_rejected_shown_to_primary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_rejected_shown_to_secondary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_reminder = None
    # Attribute is overwritten below the class definition
    team_merge_request_reminder_shown_to_primary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_reminder_shown_to_secondary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_revoked = None
    # Attribute is overwritten below the class definition
    team_merge_request_sent_shown_to_primary_team = None
    # Attribute is overwritten below the class definition
    team_merge_request_sent_shown_to_secondary_team = None
    # Attribute is overwritten below the class definition
    other = None

    def is_admin_alerting_alert_state_changed(self):
        """
        Check if the union tag is ``admin_alerting_alert_state_changed``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_alert_state_changed'

    def is_admin_alerting_changed_alert_config(self):
        """
        Check if the union tag is ``admin_alerting_changed_alert_config``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_changed_alert_config'

    def is_admin_alerting_triggered_alert(self):
        """
        Check if the union tag is ``admin_alerting_triggered_alert``.

        :rtype: bool
        """
        return self._tag == 'admin_alerting_triggered_alert'

    def is_app_blocked_by_permissions(self):
        """
        Check if the union tag is ``app_blocked_by_permissions``.

        :rtype: bool
        """
        return self._tag == 'app_blocked_by_permissions'

    def is_app_link_team(self):
        """
        Check if the union tag is ``app_link_team``.

        :rtype: bool
        """
        return self._tag == 'app_link_team'

    def is_app_link_user(self):
        """
        Check if the union tag is ``app_link_user``.

        :rtype: bool
        """
        return self._tag == 'app_link_user'

    def is_app_unlink_team(self):
        """
        Check if the union tag is ``app_unlink_team``.

        :rtype: bool
        """
        return self._tag == 'app_unlink_team'

    def is_app_unlink_user(self):
        """
        Check if the union tag is ``app_unlink_user``.

        :rtype: bool
        """
        return self._tag == 'app_unlink_user'

    def is_integration_connected(self):
        """
        Check if the union tag is ``integration_connected``.

        :rtype: bool
        """
        return self._tag == 'integration_connected'

    def is_integration_disconnected(self):
        """
        Check if the union tag is ``integration_disconnected``.

        :rtype: bool
        """
        return self._tag == 'integration_disconnected'

    def is_file_add_comment(self):
        """
        Check if the union tag is ``file_add_comment``.

        :rtype: bool
        """
        return self._tag == 'file_add_comment'

    def is_file_change_comment_subscription(self):
        """
        Check if the union tag is ``file_change_comment_subscription``.

        :rtype: bool
        """
        return self._tag == 'file_change_comment_subscription'

    def is_file_delete_comment(self):
        """
        Check if the union tag is ``file_delete_comment``.

        :rtype: bool
        """
        return self._tag == 'file_delete_comment'

    def is_file_edit_comment(self):
        """
        Check if the union tag is ``file_edit_comment``.

        :rtype: bool
        """
        return self._tag == 'file_edit_comment'

    def is_file_like_comment(self):
        """
        Check if the union tag is ``file_like_comment``.

        :rtype: bool
        """
        return self._tag == 'file_like_comment'

    def is_file_resolve_comment(self):
        """
        Check if the union tag is ``file_resolve_comment``.

        :rtype: bool
        """
        return self._tag == 'file_resolve_comment'

    def is_file_unlike_comment(self):
        """
        Check if the union tag is ``file_unlike_comment``.

        :rtype: bool
        """
        return self._tag == 'file_unlike_comment'

    def is_file_unresolve_comment(self):
        """
        Check if the union tag is ``file_unresolve_comment``.

        :rtype: bool
        """
        return self._tag == 'file_unresolve_comment'

    def is_governance_policy_add_folders(self):
        """
        Check if the union tag is ``governance_policy_add_folders``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_add_folders'

    def is_governance_policy_add_folder_failed(self):
        """
        Check if the union tag is ``governance_policy_add_folder_failed``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_add_folder_failed'

    def is_governance_policy_content_disposed(self):
        """
        Check if the union tag is ``governance_policy_content_disposed``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_content_disposed'

    def is_governance_policy_create(self):
        """
        Check if the union tag is ``governance_policy_create``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_create'

    def is_governance_policy_delete(self):
        """
        Check if the union tag is ``governance_policy_delete``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_delete'

    def is_governance_policy_edit_details(self):
        """
        Check if the union tag is ``governance_policy_edit_details``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_edit_details'

    def is_governance_policy_edit_duration(self):
        """
        Check if the union tag is ``governance_policy_edit_duration``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_edit_duration'

    def is_governance_policy_export_created(self):
        """
        Check if the union tag is ``governance_policy_export_created``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_export_created'

    def is_governance_policy_export_removed(self):
        """
        Check if the union tag is ``governance_policy_export_removed``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_export_removed'

    def is_governance_policy_remove_folders(self):
        """
        Check if the union tag is ``governance_policy_remove_folders``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_remove_folders'

    def is_governance_policy_report_created(self):
        """
        Check if the union tag is ``governance_policy_report_created``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_report_created'

    def is_governance_policy_zip_part_downloaded(self):
        """
        Check if the union tag is ``governance_policy_zip_part_downloaded``.

        :rtype: bool
        """
        return self._tag == 'governance_policy_zip_part_downloaded'

    def is_legal_holds_activate_a_hold(self):
        """
        Check if the union tag is ``legal_holds_activate_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_activate_a_hold'

    def is_legal_holds_add_members(self):
        """
        Check if the union tag is ``legal_holds_add_members``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_add_members'

    def is_legal_holds_change_hold_details(self):
        """
        Check if the union tag is ``legal_holds_change_hold_details``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_change_hold_details'

    def is_legal_holds_change_hold_name(self):
        """
        Check if the union tag is ``legal_holds_change_hold_name``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_change_hold_name'

    def is_legal_holds_export_a_hold(self):
        """
        Check if the union tag is ``legal_holds_export_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_a_hold'

    def is_legal_holds_export_cancelled(self):
        """
        Check if the union tag is ``legal_holds_export_cancelled``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_cancelled'

    def is_legal_holds_export_downloaded(self):
        """
        Check if the union tag is ``legal_holds_export_downloaded``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_downloaded'

    def is_legal_holds_export_removed(self):
        """
        Check if the union tag is ``legal_holds_export_removed``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_export_removed'

    def is_legal_holds_release_a_hold(self):
        """
        Check if the union tag is ``legal_holds_release_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_release_a_hold'

    def is_legal_holds_remove_members(self):
        """
        Check if the union tag is ``legal_holds_remove_members``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_remove_members'

    def is_legal_holds_report_a_hold(self):
        """
        Check if the union tag is ``legal_holds_report_a_hold``.

        :rtype: bool
        """
        return self._tag == 'legal_holds_report_a_hold'

    def is_device_change_ip_desktop(self):
        """
        Check if the union tag is ``device_change_ip_desktop``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_desktop'

    def is_device_change_ip_mobile(self):
        """
        Check if the union tag is ``device_change_ip_mobile``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_mobile'

    def is_device_change_ip_web(self):
        """
        Check if the union tag is ``device_change_ip_web``.

        :rtype: bool
        """
        return self._tag == 'device_change_ip_web'

    def is_device_delete_on_unlink_fail(self):
        """
        Check if the union tag is ``device_delete_on_unlink_fail``.

        :rtype: bool
        """
        return self._tag == 'device_delete_on_unlink_fail'

    def is_device_delete_on_unlink_success(self):
        """
        Check if the union tag is ``device_delete_on_unlink_success``.

        :rtype: bool
        """
        return self._tag == 'device_delete_on_unlink_success'

    def is_device_link_fail(self):
        """
        Check if the union tag is ``device_link_fail``.

        :rtype: bool
        """
        return self._tag == 'device_link_fail'

    def is_device_link_success(self):
        """
        Check if the union tag is ``device_link_success``.

        :rtype: bool
        """
        return self._tag == 'device_link_success'

    def is_device_management_disabled(self):
        """
        Check if the union tag is ``device_management_disabled``.

        :rtype: bool
        """
        return self._tag == 'device_management_disabled'

    def is_device_management_enabled(self):
        """
        Check if the union tag is ``device_management_enabled``.

        :rtype: bool
        """
        return self._tag == 'device_management_enabled'

    def is_device_sync_backup_status_changed(self):
        """
        Check if the union tag is ``device_sync_backup_status_changed``.

        :rtype: bool
        """
        return self._tag == 'device_sync_backup_status_changed'

    def is_device_unlink(self):
        """
        Check if the union tag is ``device_unlink``.

        :rtype: bool
        """
        return self._tag == 'device_unlink'

    def is_dropbox_passwords_exported(self):
        """
        Check if the union tag is ``dropbox_passwords_exported``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_exported'

    def is_dropbox_passwords_new_device_enrolled(self):
        """
        Check if the union tag is ``dropbox_passwords_new_device_enrolled``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_new_device_enrolled'

    def is_emm_refresh_auth_token(self):
        """
        Check if the union tag is ``emm_refresh_auth_token``.

        :rtype: bool
        """
        return self._tag == 'emm_refresh_auth_token'

    def is_external_drive_backup_eligibility_status_checked(self):
        """
        Check if the union tag is ``external_drive_backup_eligibility_status_checked``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_eligibility_status_checked'

    def is_external_drive_backup_status_changed(self):
        """
        Check if the union tag is ``external_drive_backup_status_changed``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_status_changed'

    def is_account_capture_change_availability(self):
        """
        Check if the union tag is ``account_capture_change_availability``.

        :rtype: bool
        """
        return self._tag == 'account_capture_change_availability'

    def is_account_capture_migrate_account(self):
        """
        Check if the union tag is ``account_capture_migrate_account``.

        :rtype: bool
        """
        return self._tag == 'account_capture_migrate_account'

    def is_account_capture_notification_emails_sent(self):
        """
        Check if the union tag is ``account_capture_notification_emails_sent``.

        :rtype: bool
        """
        return self._tag == 'account_capture_notification_emails_sent'

    def is_account_capture_relinquish_account(self):
        """
        Check if the union tag is ``account_capture_relinquish_account``.

        :rtype: bool
        """
        return self._tag == 'account_capture_relinquish_account'

    def is_disabled_domain_invites(self):
        """
        Check if the union tag is ``disabled_domain_invites``.

        :rtype: bool
        """
        return self._tag == 'disabled_domain_invites'

    def is_domain_invites_approve_request_to_join_team(self):
        """
        Check if the union tag is ``domain_invites_approve_request_to_join_team``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_approve_request_to_join_team'

    def is_domain_invites_decline_request_to_join_team(self):
        """
        Check if the union tag is ``domain_invites_decline_request_to_join_team``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_decline_request_to_join_team'

    def is_domain_invites_email_existing_users(self):
        """
        Check if the union tag is ``domain_invites_email_existing_users``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_email_existing_users'

    def is_domain_invites_request_to_join_team(self):
        """
        Check if the union tag is ``domain_invites_request_to_join_team``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_request_to_join_team'

    def is_domain_invites_set_invite_new_user_pref_to_no(self):
        """
        Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_no``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_set_invite_new_user_pref_to_no'

    def is_domain_invites_set_invite_new_user_pref_to_yes(self):
        """
        Check if the union tag is ``domain_invites_set_invite_new_user_pref_to_yes``.

        :rtype: bool
        """
        return self._tag == 'domain_invites_set_invite_new_user_pref_to_yes'

    def is_domain_verification_add_domain_fail(self):
        """
        Check if the union tag is ``domain_verification_add_domain_fail``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_add_domain_fail'

    def is_domain_verification_add_domain_success(self):
        """
        Check if the union tag is ``domain_verification_add_domain_success``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_add_domain_success'

    def is_domain_verification_remove_domain(self):
        """
        Check if the union tag is ``domain_verification_remove_domain``.

        :rtype: bool
        """
        return self._tag == 'domain_verification_remove_domain'

    def is_enabled_domain_invites(self):
        """
        Check if the union tag is ``enabled_domain_invites``.

        :rtype: bool
        """
        return self._tag == 'enabled_domain_invites'

    def is_apply_naming_convention(self):
        """
        Check if the union tag is ``apply_naming_convention``.

        :rtype: bool
        """
        return self._tag == 'apply_naming_convention'

    def is_create_folder(self):
        """
        Check if the union tag is ``create_folder``.

        :rtype: bool
        """
        return self._tag == 'create_folder'

    def is_file_add(self):
        """
        Check if the union tag is ``file_add``.

        :rtype: bool
        """
        return self._tag == 'file_add'

    def is_file_copy(self):
        """
        Check if the union tag is ``file_copy``.

        :rtype: bool
        """
        return self._tag == 'file_copy'

    def is_file_delete(self):
        """
        Check if the union tag is ``file_delete``.

        :rtype: bool
        """
        return self._tag == 'file_delete'

    def is_file_download(self):
        """
        Check if the union tag is ``file_download``.

        :rtype: bool
        """
        return self._tag == 'file_download'

    def is_file_edit(self):
        """
        Check if the union tag is ``file_edit``.

        :rtype: bool
        """
        return self._tag == 'file_edit'

    def is_file_get_copy_reference(self):
        """
        Check if the union tag is ``file_get_copy_reference``.

        :rtype: bool
        """
        return self._tag == 'file_get_copy_reference'

    def is_file_locking_lock_status_changed(self):
        """
        Check if the union tag is ``file_locking_lock_status_changed``.

        :rtype: bool
        """
        return self._tag == 'file_locking_lock_status_changed'

    def is_file_move(self):
        """
        Check if the union tag is ``file_move``.

        :rtype: bool
        """
        return self._tag == 'file_move'

    def is_file_permanently_delete(self):
        """
        Check if the union tag is ``file_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'file_permanently_delete'

    def is_file_preview(self):
        """
        Check if the union tag is ``file_preview``.

        :rtype: bool
        """
        return self._tag == 'file_preview'

    def is_file_rename(self):
        """
        Check if the union tag is ``file_rename``.

        :rtype: bool
        """
        return self._tag == 'file_rename'

    def is_file_restore(self):
        """
        Check if the union tag is ``file_restore``.

        :rtype: bool
        """
        return self._tag == 'file_restore'

    def is_file_revert(self):
        """
        Check if the union tag is ``file_revert``.

        :rtype: bool
        """
        return self._tag == 'file_revert'

    def is_file_rollback_changes(self):
        """
        Check if the union tag is ``file_rollback_changes``.

        :rtype: bool
        """
        return self._tag == 'file_rollback_changes'

    def is_file_save_copy_reference(self):
        """
        Check if the union tag is ``file_save_copy_reference``.

        :rtype: bool
        """
        return self._tag == 'file_save_copy_reference'

    def is_folder_overview_description_changed(self):
        """
        Check if the union tag is ``folder_overview_description_changed``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_description_changed'

    def is_folder_overview_item_pinned(self):
        """
        Check if the union tag is ``folder_overview_item_pinned``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_item_pinned'

    def is_folder_overview_item_unpinned(self):
        """
        Check if the union tag is ``folder_overview_item_unpinned``.

        :rtype: bool
        """
        return self._tag == 'folder_overview_item_unpinned'

    def is_object_label_added(self):
        """
        Check if the union tag is ``object_label_added``.

        :rtype: bool
        """
        return self._tag == 'object_label_added'

    def is_object_label_removed(self):
        """
        Check if the union tag is ``object_label_removed``.

        :rtype: bool
        """
        return self._tag == 'object_label_removed'

    def is_object_label_updated_value(self):
        """
        Check if the union tag is ``object_label_updated_value``.

        :rtype: bool
        """
        return self._tag == 'object_label_updated_value'

    def is_organize_folder_with_tidy(self):
        """
        Check if the union tag is ``organize_folder_with_tidy``.

        :rtype: bool
        """
        return self._tag == 'organize_folder_with_tidy'

    def is_rewind_folder(self):
        """
        Check if the union tag is ``rewind_folder``.

        :rtype: bool
        """
        return self._tag == 'rewind_folder'

    def is_undo_naming_convention(self):
        """
        Check if the union tag is ``undo_naming_convention``.

        :rtype: bool
        """
        return self._tag == 'undo_naming_convention'

    def is_undo_organize_folder_with_tidy(self):
        """
        Check if the union tag is ``undo_organize_folder_with_tidy``.

        :rtype: bool
        """
        return self._tag == 'undo_organize_folder_with_tidy'

    def is_user_tags_added(self):
        """
        Check if the union tag is ``user_tags_added``.

        :rtype: bool
        """
        return self._tag == 'user_tags_added'

    def is_user_tags_removed(self):
        """
        Check if the union tag is ``user_tags_removed``.

        :rtype: bool
        """
        return self._tag == 'user_tags_removed'

    def is_email_ingest_receive_file(self):
        """
        Check if the union tag is ``email_ingest_receive_file``.

        :rtype: bool
        """
        return self._tag == 'email_ingest_receive_file'

    def is_file_request_change(self):
        """
        Check if the union tag is ``file_request_change``.

        :rtype: bool
        """
        return self._tag == 'file_request_change'

    def is_file_request_close(self):
        """
        Check if the union tag is ``file_request_close``.

        :rtype: bool
        """
        return self._tag == 'file_request_close'

    def is_file_request_create(self):
        """
        Check if the union tag is ``file_request_create``.

        :rtype: bool
        """
        return self._tag == 'file_request_create'

    def is_file_request_delete(self):
        """
        Check if the union tag is ``file_request_delete``.

        :rtype: bool
        """
        return self._tag == 'file_request_delete'

    def is_file_request_receive_file(self):
        """
        Check if the union tag is ``file_request_receive_file``.

        :rtype: bool
        """
        return self._tag == 'file_request_receive_file'

    def is_group_add_external_id(self):
        """
        Check if the union tag is ``group_add_external_id``.

        :rtype: bool
        """
        return self._tag == 'group_add_external_id'

    def is_group_add_member(self):
        """
        Check if the union tag is ``group_add_member``.

        :rtype: bool
        """
        return self._tag == 'group_add_member'

    def is_group_change_external_id(self):
        """
        Check if the union tag is ``group_change_external_id``.

        :rtype: bool
        """
        return self._tag == 'group_change_external_id'

    def is_group_change_management_type(self):
        """
        Check if the union tag is ``group_change_management_type``.

        :rtype: bool
        """
        return self._tag == 'group_change_management_type'

    def is_group_change_member_role(self):
        """
        Check if the union tag is ``group_change_member_role``.

        :rtype: bool
        """
        return self._tag == 'group_change_member_role'

    def is_group_create(self):
        """
        Check if the union tag is ``group_create``.

        :rtype: bool
        """
        return self._tag == 'group_create'

    def is_group_delete(self):
        """
        Check if the union tag is ``group_delete``.

        :rtype: bool
        """
        return self._tag == 'group_delete'

    def is_group_description_updated(self):
        """
        Check if the union tag is ``group_description_updated``.

        :rtype: bool
        """
        return self._tag == 'group_description_updated'

    def is_group_join_policy_updated(self):
        """
        Check if the union tag is ``group_join_policy_updated``.

        :rtype: bool
        """
        return self._tag == 'group_join_policy_updated'

    def is_group_moved(self):
        """
        Check if the union tag is ``group_moved``.

        :rtype: bool
        """
        return self._tag == 'group_moved'

    def is_group_remove_external_id(self):
        """
        Check if the union tag is ``group_remove_external_id``.

        :rtype: bool
        """
        return self._tag == 'group_remove_external_id'

    def is_group_remove_member(self):
        """
        Check if the union tag is ``group_remove_member``.

        :rtype: bool
        """
        return self._tag == 'group_remove_member'

    def is_group_rename(self):
        """
        Check if the union tag is ``group_rename``.

        :rtype: bool
        """
        return self._tag == 'group_rename'

    def is_account_lock_or_unlocked(self):
        """
        Check if the union tag is ``account_lock_or_unlocked``.

        :rtype: bool
        """
        return self._tag == 'account_lock_or_unlocked'

    def is_emm_error(self):
        """
        Check if the union tag is ``emm_error``.

        :rtype: bool
        """
        return self._tag == 'emm_error'

    def is_guest_admin_signed_in_via_trusted_teams(self):
        """
        Check if the union tag is ``guest_admin_signed_in_via_trusted_teams``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_signed_in_via_trusted_teams'

    def is_guest_admin_signed_out_via_trusted_teams(self):
        """
        Check if the union tag is ``guest_admin_signed_out_via_trusted_teams``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_signed_out_via_trusted_teams'

    def is_login_fail(self):
        """
        Check if the union tag is ``login_fail``.

        :rtype: bool
        """
        return self._tag == 'login_fail'

    def is_login_success(self):
        """
        Check if the union tag is ``login_success``.

        :rtype: bool
        """
        return self._tag == 'login_success'

    def is_logout(self):
        """
        Check if the union tag is ``logout``.

        :rtype: bool
        """
        return self._tag == 'logout'

    def is_reseller_support_session_end(self):
        """
        Check if the union tag is ``reseller_support_session_end``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_session_end'

    def is_reseller_support_session_start(self):
        """
        Check if the union tag is ``reseller_support_session_start``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_session_start'

    def is_sign_in_as_session_end(self):
        """
        Check if the union tag is ``sign_in_as_session_end``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as_session_end'

    def is_sign_in_as_session_start(self):
        """
        Check if the union tag is ``sign_in_as_session_start``.

        :rtype: bool
        """
        return self._tag == 'sign_in_as_session_start'

    def is_sso_error(self):
        """
        Check if the union tag is ``sso_error``.

        :rtype: bool
        """
        return self._tag == 'sso_error'

    def is_create_team_invite_link(self):
        """
        Check if the union tag is ``create_team_invite_link``.

        :rtype: bool
        """
        return self._tag == 'create_team_invite_link'

    def is_delete_team_invite_link(self):
        """
        Check if the union tag is ``delete_team_invite_link``.

        :rtype: bool
        """
        return self._tag == 'delete_team_invite_link'

    def is_member_add_external_id(self):
        """
        Check if the union tag is ``member_add_external_id``.

        :rtype: bool
        """
        return self._tag == 'member_add_external_id'

    def is_member_add_name(self):
        """
        Check if the union tag is ``member_add_name``.

        :rtype: bool
        """
        return self._tag == 'member_add_name'

    def is_member_change_admin_role(self):
        """
        Check if the union tag is ``member_change_admin_role``.

        :rtype: bool
        """
        return self._tag == 'member_change_admin_role'

    def is_member_change_email(self):
        """
        Check if the union tag is ``member_change_email``.

        :rtype: bool
        """
        return self._tag == 'member_change_email'

    def is_member_change_external_id(self):
        """
        Check if the union tag is ``member_change_external_id``.

        :rtype: bool
        """
        return self._tag == 'member_change_external_id'

    def is_member_change_membership_type(self):
        """
        Check if the union tag is ``member_change_membership_type``.

        :rtype: bool
        """
        return self._tag == 'member_change_membership_type'

    def is_member_change_name(self):
        """
        Check if the union tag is ``member_change_name``.

        :rtype: bool
        """
        return self._tag == 'member_change_name'

    def is_member_change_reseller_role(self):
        """
        Check if the union tag is ``member_change_reseller_role``.

        :rtype: bool
        """
        return self._tag == 'member_change_reseller_role'

    def is_member_change_status(self):
        """
        Check if the union tag is ``member_change_status``.

        :rtype: bool
        """
        return self._tag == 'member_change_status'

    def is_member_delete_manual_contacts(self):
        """
        Check if the union tag is ``member_delete_manual_contacts``.

        :rtype: bool
        """
        return self._tag == 'member_delete_manual_contacts'

    def is_member_delete_profile_photo(self):
        """
        Check if the union tag is ``member_delete_profile_photo``.

        :rtype: bool
        """
        return self._tag == 'member_delete_profile_photo'

    def is_member_permanently_delete_account_contents(self):
        """
        Check if the union tag is ``member_permanently_delete_account_contents``.

        :rtype: bool
        """
        return self._tag == 'member_permanently_delete_account_contents'

    def is_member_remove_external_id(self):
        """
        Check if the union tag is ``member_remove_external_id``.

        :rtype: bool
        """
        return self._tag == 'member_remove_external_id'

    def is_member_set_profile_photo(self):
        """
        Check if the union tag is ``member_set_profile_photo``.

        :rtype: bool
        """
        return self._tag == 'member_set_profile_photo'

    def is_member_space_limits_add_custom_quota(self):
        """
        Check if the union tag is ``member_space_limits_add_custom_quota``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_add_custom_quota'

    def is_member_space_limits_change_custom_quota(self):
        """
        Check if the union tag is ``member_space_limits_change_custom_quota``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_custom_quota'

    def is_member_space_limits_change_status(self):
        """
        Check if the union tag is ``member_space_limits_change_status``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_status'

    def is_member_space_limits_remove_custom_quota(self):
        """
        Check if the union tag is ``member_space_limits_remove_custom_quota``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_remove_custom_quota'

    def is_member_suggest(self):
        """
        Check if the union tag is ``member_suggest``.

        :rtype: bool
        """
        return self._tag == 'member_suggest'

    def is_member_transfer_account_contents(self):
        """
        Check if the union tag is ``member_transfer_account_contents``.

        :rtype: bool
        """
        return self._tag == 'member_transfer_account_contents'

    def is_pending_secondary_email_added(self):
        """
        Check if the union tag is ``pending_secondary_email_added``.

        :rtype: bool
        """
        return self._tag == 'pending_secondary_email_added'

    def is_secondary_email_deleted(self):
        """
        Check if the union tag is ``secondary_email_deleted``.

        :rtype: bool
        """
        return self._tag == 'secondary_email_deleted'

    def is_secondary_email_verified(self):
        """
        Check if the union tag is ``secondary_email_verified``.

        :rtype: bool
        """
        return self._tag == 'secondary_email_verified'

    def is_secondary_mails_policy_changed(self):
        """
        Check if the union tag is ``secondary_mails_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'secondary_mails_policy_changed'

    def is_binder_add_page(self):
        """
        Check if the union tag is ``binder_add_page``.

        :rtype: bool
        """
        return self._tag == 'binder_add_page'

    def is_binder_add_section(self):
        """
        Check if the union tag is ``binder_add_section``.

        :rtype: bool
        """
        return self._tag == 'binder_add_section'

    def is_binder_remove_page(self):
        """
        Check if the union tag is ``binder_remove_page``.

        :rtype: bool
        """
        return self._tag == 'binder_remove_page'

    def is_binder_remove_section(self):
        """
        Check if the union tag is ``binder_remove_section``.

        :rtype: bool
        """
        return self._tag == 'binder_remove_section'

    def is_binder_rename_page(self):
        """
        Check if the union tag is ``binder_rename_page``.

        :rtype: bool
        """
        return self._tag == 'binder_rename_page'

    def is_binder_rename_section(self):
        """
        Check if the union tag is ``binder_rename_section``.

        :rtype: bool
        """
        return self._tag == 'binder_rename_section'

    def is_binder_reorder_page(self):
        """
        Check if the union tag is ``binder_reorder_page``.

        :rtype: bool
        """
        return self._tag == 'binder_reorder_page'

    def is_binder_reorder_section(self):
        """
        Check if the union tag is ``binder_reorder_section``.

        :rtype: bool
        """
        return self._tag == 'binder_reorder_section'

    def is_paper_content_add_member(self):
        """
        Check if the union tag is ``paper_content_add_member``.

        :rtype: bool
        """
        return self._tag == 'paper_content_add_member'

    def is_paper_content_add_to_folder(self):
        """
        Check if the union tag is ``paper_content_add_to_folder``.

        :rtype: bool
        """
        return self._tag == 'paper_content_add_to_folder'

    def is_paper_content_archive(self):
        """
        Check if the union tag is ``paper_content_archive``.

        :rtype: bool
        """
        return self._tag == 'paper_content_archive'

    def is_paper_content_create(self):
        """
        Check if the union tag is ``paper_content_create``.

        :rtype: bool
        """
        return self._tag == 'paper_content_create'

    def is_paper_content_permanently_delete(self):
        """
        Check if the union tag is ``paper_content_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'paper_content_permanently_delete'

    def is_paper_content_remove_from_folder(self):
        """
        Check if the union tag is ``paper_content_remove_from_folder``.

        :rtype: bool
        """
        return self._tag == 'paper_content_remove_from_folder'

    def is_paper_content_remove_member(self):
        """
        Check if the union tag is ``paper_content_remove_member``.

        :rtype: bool
        """
        return self._tag == 'paper_content_remove_member'

    def is_paper_content_rename(self):
        """
        Check if the union tag is ``paper_content_rename``.

        :rtype: bool
        """
        return self._tag == 'paper_content_rename'

    def is_paper_content_restore(self):
        """
        Check if the union tag is ``paper_content_restore``.

        :rtype: bool
        """
        return self._tag == 'paper_content_restore'

    def is_paper_doc_add_comment(self):
        """
        Check if the union tag is ``paper_doc_add_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_add_comment'

    def is_paper_doc_change_member_role(self):
        """
        Check if the union tag is ``paper_doc_change_member_role``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_member_role'

    def is_paper_doc_change_sharing_policy(self):
        """
        Check if the union tag is ``paper_doc_change_sharing_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_sharing_policy'

    def is_paper_doc_change_subscription(self):
        """
        Check if the union tag is ``paper_doc_change_subscription``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_change_subscription'

    def is_paper_doc_deleted(self):
        """
        Check if the union tag is ``paper_doc_deleted``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_deleted'

    def is_paper_doc_delete_comment(self):
        """
        Check if the union tag is ``paper_doc_delete_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_delete_comment'

    def is_paper_doc_download(self):
        """
        Check if the union tag is ``paper_doc_download``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_download'

    def is_paper_doc_edit(self):
        """
        Check if the union tag is ``paper_doc_edit``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_edit'

    def is_paper_doc_edit_comment(self):
        """
        Check if the union tag is ``paper_doc_edit_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_edit_comment'

    def is_paper_doc_followed(self):
        """
        Check if the union tag is ``paper_doc_followed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_followed'

    def is_paper_doc_mention(self):
        """
        Check if the union tag is ``paper_doc_mention``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_mention'

    def is_paper_doc_ownership_changed(self):
        """
        Check if the union tag is ``paper_doc_ownership_changed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_ownership_changed'

    def is_paper_doc_request_access(self):
        """
        Check if the union tag is ``paper_doc_request_access``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_request_access'

    def is_paper_doc_resolve_comment(self):
        """
        Check if the union tag is ``paper_doc_resolve_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_resolve_comment'

    def is_paper_doc_revert(self):
        """
        Check if the union tag is ``paper_doc_revert``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_revert'

    def is_paper_doc_slack_share(self):
        """
        Check if the union tag is ``paper_doc_slack_share``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_slack_share'

    def is_paper_doc_team_invite(self):
        """
        Check if the union tag is ``paper_doc_team_invite``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_team_invite'

    def is_paper_doc_trashed(self):
        """
        Check if the union tag is ``paper_doc_trashed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_trashed'

    def is_paper_doc_unresolve_comment(self):
        """
        Check if the union tag is ``paper_doc_unresolve_comment``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_unresolve_comment'

    def is_paper_doc_untrashed(self):
        """
        Check if the union tag is ``paper_doc_untrashed``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_untrashed'

    def is_paper_doc_view(self):
        """
        Check if the union tag is ``paper_doc_view``.

        :rtype: bool
        """
        return self._tag == 'paper_doc_view'

    def is_paper_external_view_allow(self):
        """
        Check if the union tag is ``paper_external_view_allow``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_allow'

    def is_paper_external_view_default_team(self):
        """
        Check if the union tag is ``paper_external_view_default_team``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_default_team'

    def is_paper_external_view_forbid(self):
        """
        Check if the union tag is ``paper_external_view_forbid``.

        :rtype: bool
        """
        return self._tag == 'paper_external_view_forbid'

    def is_paper_folder_change_subscription(self):
        """
        Check if the union tag is ``paper_folder_change_subscription``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_change_subscription'

    def is_paper_folder_deleted(self):
        """
        Check if the union tag is ``paper_folder_deleted``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_deleted'

    def is_paper_folder_followed(self):
        """
        Check if the union tag is ``paper_folder_followed``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_followed'

    def is_paper_folder_team_invite(self):
        """
        Check if the union tag is ``paper_folder_team_invite``.

        :rtype: bool
        """
        return self._tag == 'paper_folder_team_invite'

    def is_paper_published_link_change_permission(self):
        """
        Check if the union tag is ``paper_published_link_change_permission``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_change_permission'

    def is_paper_published_link_create(self):
        """
        Check if the union tag is ``paper_published_link_create``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_create'

    def is_paper_published_link_disabled(self):
        """
        Check if the union tag is ``paper_published_link_disabled``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_disabled'

    def is_paper_published_link_view(self):
        """
        Check if the union tag is ``paper_published_link_view``.

        :rtype: bool
        """
        return self._tag == 'paper_published_link_view'

    def is_password_change(self):
        """
        Check if the union tag is ``password_change``.

        :rtype: bool
        """
        return self._tag == 'password_change'

    def is_password_reset(self):
        """
        Check if the union tag is ``password_reset``.

        :rtype: bool
        """
        return self._tag == 'password_reset'

    def is_password_reset_all(self):
        """
        Check if the union tag is ``password_reset_all``.

        :rtype: bool
        """
        return self._tag == 'password_reset_all'

    def is_classification_create_report(self):
        """
        Check if the union tag is ``classification_create_report``.

        :rtype: bool
        """
        return self._tag == 'classification_create_report'

    def is_classification_create_report_fail(self):
        """
        Check if the union tag is ``classification_create_report_fail``.

        :rtype: bool
        """
        return self._tag == 'classification_create_report_fail'

    def is_emm_create_exceptions_report(self):
        """
        Check if the union tag is ``emm_create_exceptions_report``.

        :rtype: bool
        """
        return self._tag == 'emm_create_exceptions_report'

    def is_emm_create_usage_report(self):
        """
        Check if the union tag is ``emm_create_usage_report``.

        :rtype: bool
        """
        return self._tag == 'emm_create_usage_report'

    def is_export_members_report(self):
        """
        Check if the union tag is ``export_members_report``.

        :rtype: bool
        """
        return self._tag == 'export_members_report'

    def is_export_members_report_fail(self):
        """
        Check if the union tag is ``export_members_report_fail``.

        :rtype: bool
        """
        return self._tag == 'export_members_report_fail'

    def is_external_sharing_create_report(self):
        """
        Check if the union tag is ``external_sharing_create_report``.

        :rtype: bool
        """
        return self._tag == 'external_sharing_create_report'

    def is_external_sharing_report_failed(self):
        """
        Check if the union tag is ``external_sharing_report_failed``.

        :rtype: bool
        """
        return self._tag == 'external_sharing_report_failed'

    def is_no_expiration_link_gen_create_report(self):
        """
        Check if the union tag is ``no_expiration_link_gen_create_report``.

        :rtype: bool
        """
        return self._tag == 'no_expiration_link_gen_create_report'

    def is_no_expiration_link_gen_report_failed(self):
        """
        Check if the union tag is ``no_expiration_link_gen_report_failed``.

        :rtype: bool
        """
        return self._tag == 'no_expiration_link_gen_report_failed'

    def is_no_password_link_gen_create_report(self):
        """
        Check if the union tag is ``no_password_link_gen_create_report``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_gen_create_report'

    def is_no_password_link_gen_report_failed(self):
        """
        Check if the union tag is ``no_password_link_gen_report_failed``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_gen_report_failed'

    def is_no_password_link_view_create_report(self):
        """
        Check if the union tag is ``no_password_link_view_create_report``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_view_create_report'

    def is_no_password_link_view_report_failed(self):
        """
        Check if the union tag is ``no_password_link_view_report_failed``.

        :rtype: bool
        """
        return self._tag == 'no_password_link_view_report_failed'

    def is_outdated_link_view_create_report(self):
        """
        Check if the union tag is ``outdated_link_view_create_report``.

        :rtype: bool
        """
        return self._tag == 'outdated_link_view_create_report'

    def is_outdated_link_view_report_failed(self):
        """
        Check if the union tag is ``outdated_link_view_report_failed``.

        :rtype: bool
        """
        return self._tag == 'outdated_link_view_report_failed'

    def is_paper_admin_export_start(self):
        """
        Check if the union tag is ``paper_admin_export_start``.

        :rtype: bool
        """
        return self._tag == 'paper_admin_export_start'

    def is_smart_sync_create_admin_privilege_report(self):
        """
        Check if the union tag is ``smart_sync_create_admin_privilege_report``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_create_admin_privilege_report'

    def is_team_activity_create_report(self):
        """
        Check if the union tag is ``team_activity_create_report``.

        :rtype: bool
        """
        return self._tag == 'team_activity_create_report'

    def is_team_activity_create_report_fail(self):
        """
        Check if the union tag is ``team_activity_create_report_fail``.

        :rtype: bool
        """
        return self._tag == 'team_activity_create_report_fail'

    def is_collection_share(self):
        """
        Check if the union tag is ``collection_share``.

        :rtype: bool
        """
        return self._tag == 'collection_share'

    def is_file_transfers_file_add(self):
        """
        Check if the union tag is ``file_transfers_file_add``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_file_add'

    def is_file_transfers_transfer_delete(self):
        """
        Check if the union tag is ``file_transfers_transfer_delete``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_delete'

    def is_file_transfers_transfer_download(self):
        """
        Check if the union tag is ``file_transfers_transfer_download``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_download'

    def is_file_transfers_transfer_send(self):
        """
        Check if the union tag is ``file_transfers_transfer_send``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_send'

    def is_file_transfers_transfer_view(self):
        """
        Check if the union tag is ``file_transfers_transfer_view``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_transfer_view'

    def is_note_acl_invite_only(self):
        """
        Check if the union tag is ``note_acl_invite_only``.

        :rtype: bool
        """
        return self._tag == 'note_acl_invite_only'

    def is_note_acl_link(self):
        """
        Check if the union tag is ``note_acl_link``.

        :rtype: bool
        """
        return self._tag == 'note_acl_link'

    def is_note_acl_team_link(self):
        """
        Check if the union tag is ``note_acl_team_link``.

        :rtype: bool
        """
        return self._tag == 'note_acl_team_link'

    def is_note_shared(self):
        """
        Check if the union tag is ``note_shared``.

        :rtype: bool
        """
        return self._tag == 'note_shared'

    def is_note_share_receive(self):
        """
        Check if the union tag is ``note_share_receive``.

        :rtype: bool
        """
        return self._tag == 'note_share_receive'

    def is_open_note_shared(self):
        """
        Check if the union tag is ``open_note_shared``.

        :rtype: bool
        """
        return self._tag == 'open_note_shared'

    def is_sf_add_group(self):
        """
        Check if the union tag is ``sf_add_group``.

        :rtype: bool
        """
        return self._tag == 'sf_add_group'

    def is_sf_allow_non_members_to_view_shared_links(self):
        """
        Check if the union tag is ``sf_allow_non_members_to_view_shared_links``.

        :rtype: bool
        """
        return self._tag == 'sf_allow_non_members_to_view_shared_links'

    def is_sf_external_invite_warn(self):
        """
        Check if the union tag is ``sf_external_invite_warn``.

        :rtype: bool
        """
        return self._tag == 'sf_external_invite_warn'

    def is_sf_fb_invite(self):
        """
        Check if the union tag is ``sf_fb_invite``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_invite'

    def is_sf_fb_invite_change_role(self):
        """
        Check if the union tag is ``sf_fb_invite_change_role``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_invite_change_role'

    def is_sf_fb_uninvite(self):
        """
        Check if the union tag is ``sf_fb_uninvite``.

        :rtype: bool
        """
        return self._tag == 'sf_fb_uninvite'

    def is_sf_invite_group(self):
        """
        Check if the union tag is ``sf_invite_group``.

        :rtype: bool
        """
        return self._tag == 'sf_invite_group'

    def is_sf_team_grant_access(self):
        """
        Check if the union tag is ``sf_team_grant_access``.

        :rtype: bool
        """
        return self._tag == 'sf_team_grant_access'

    def is_sf_team_invite(self):
        """
        Check if the union tag is ``sf_team_invite``.

        :rtype: bool
        """
        return self._tag == 'sf_team_invite'

    def is_sf_team_invite_change_role(self):
        """
        Check if the union tag is ``sf_team_invite_change_role``.

        :rtype: bool
        """
        return self._tag == 'sf_team_invite_change_role'

    def is_sf_team_join(self):
        """
        Check if the union tag is ``sf_team_join``.

        :rtype: bool
        """
        return self._tag == 'sf_team_join'

    def is_sf_team_join_from_oob_link(self):
        """
        Check if the union tag is ``sf_team_join_from_oob_link``.

        :rtype: bool
        """
        return self._tag == 'sf_team_join_from_oob_link'

    def is_sf_team_uninvite(self):
        """
        Check if the union tag is ``sf_team_uninvite``.

        :rtype: bool
        """
        return self._tag == 'sf_team_uninvite'

    def is_shared_content_add_invitees(self):
        """
        Check if the union tag is ``shared_content_add_invitees``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_invitees'

    def is_shared_content_add_link_expiry(self):
        """
        Check if the union tag is ``shared_content_add_link_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_link_expiry'

    def is_shared_content_add_link_password(self):
        """
        Check if the union tag is ``shared_content_add_link_password``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_link_password'

    def is_shared_content_add_member(self):
        """
        Check if the union tag is ``shared_content_add_member``.

        :rtype: bool
        """
        return self._tag == 'shared_content_add_member'

    def is_shared_content_change_downloads_policy(self):
        """
        Check if the union tag is ``shared_content_change_downloads_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_downloads_policy'

    def is_shared_content_change_invitee_role(self):
        """
        Check if the union tag is ``shared_content_change_invitee_role``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_invitee_role'

    def is_shared_content_change_link_audience(self):
        """
        Check if the union tag is ``shared_content_change_link_audience``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_audience'

    def is_shared_content_change_link_expiry(self):
        """
        Check if the union tag is ``shared_content_change_link_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_expiry'

    def is_shared_content_change_link_password(self):
        """
        Check if the union tag is ``shared_content_change_link_password``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_link_password'

    def is_shared_content_change_member_role(self):
        """
        Check if the union tag is ``shared_content_change_member_role``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_member_role'

    def is_shared_content_change_viewer_info_policy(self):
        """
        Check if the union tag is ``shared_content_change_viewer_info_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_content_change_viewer_info_policy'

    def is_shared_content_claim_invitation(self):
        """
        Check if the union tag is ``shared_content_claim_invitation``.

        :rtype: bool
        """
        return self._tag == 'shared_content_claim_invitation'

    def is_shared_content_copy(self):
        """
        Check if the union tag is ``shared_content_copy``.

        :rtype: bool
        """
        return self._tag == 'shared_content_copy'

    def is_shared_content_download(self):
        """
        Check if the union tag is ``shared_content_download``.

        :rtype: bool
        """
        return self._tag == 'shared_content_download'

    def is_shared_content_relinquish_membership(self):
        """
        Check if the union tag is ``shared_content_relinquish_membership``.

        :rtype: bool
        """
        return self._tag == 'shared_content_relinquish_membership'

    def is_shared_content_remove_invitees(self):
        """
        Check if the union tag is ``shared_content_remove_invitees``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_invitees'

    def is_shared_content_remove_link_expiry(self):
        """
        Check if the union tag is ``shared_content_remove_link_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_link_expiry'

    def is_shared_content_remove_link_password(self):
        """
        Check if the union tag is ``shared_content_remove_link_password``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_link_password'

    def is_shared_content_remove_member(self):
        """
        Check if the union tag is ``shared_content_remove_member``.

        :rtype: bool
        """
        return self._tag == 'shared_content_remove_member'

    def is_shared_content_request_access(self):
        """
        Check if the union tag is ``shared_content_request_access``.

        :rtype: bool
        """
        return self._tag == 'shared_content_request_access'

    def is_shared_content_restore_invitees(self):
        """
        Check if the union tag is ``shared_content_restore_invitees``.

        :rtype: bool
        """
        return self._tag == 'shared_content_restore_invitees'

    def is_shared_content_restore_member(self):
        """
        Check if the union tag is ``shared_content_restore_member``.

        :rtype: bool
        """
        return self._tag == 'shared_content_restore_member'

    def is_shared_content_unshare(self):
        """
        Check if the union tag is ``shared_content_unshare``.

        :rtype: bool
        """
        return self._tag == 'shared_content_unshare'

    def is_shared_content_view(self):
        """
        Check if the union tag is ``shared_content_view``.

        :rtype: bool
        """
        return self._tag == 'shared_content_view'

    def is_shared_folder_change_link_policy(self):
        """
        Check if the union tag is ``shared_folder_change_link_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_link_policy'

    def is_shared_folder_change_members_inheritance_policy(self):
        """
        Check if the union tag is ``shared_folder_change_members_inheritance_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_inheritance_policy'

    def is_shared_folder_change_members_management_policy(self):
        """
        Check if the union tag is ``shared_folder_change_members_management_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_management_policy'

    def is_shared_folder_change_members_policy(self):
        """
        Check if the union tag is ``shared_folder_change_members_policy``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_change_members_policy'

    def is_shared_folder_create(self):
        """
        Check if the union tag is ``shared_folder_create``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_create'

    def is_shared_folder_decline_invitation(self):
        """
        Check if the union tag is ``shared_folder_decline_invitation``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_decline_invitation'

    def is_shared_folder_mount(self):
        """
        Check if the union tag is ``shared_folder_mount``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_mount'

    def is_shared_folder_nest(self):
        """
        Check if the union tag is ``shared_folder_nest``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_nest'

    def is_shared_folder_transfer_ownership(self):
        """
        Check if the union tag is ``shared_folder_transfer_ownership``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_transfer_ownership'

    def is_shared_folder_unmount(self):
        """
        Check if the union tag is ``shared_folder_unmount``.

        :rtype: bool
        """
        return self._tag == 'shared_folder_unmount'

    def is_shared_link_add_expiry(self):
        """
        Check if the union tag is ``shared_link_add_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_link_add_expiry'

    def is_shared_link_change_expiry(self):
        """
        Check if the union tag is ``shared_link_change_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_link_change_expiry'

    def is_shared_link_change_visibility(self):
        """
        Check if the union tag is ``shared_link_change_visibility``.

        :rtype: bool
        """
        return self._tag == 'shared_link_change_visibility'

    def is_shared_link_copy(self):
        """
        Check if the union tag is ``shared_link_copy``.

        :rtype: bool
        """
        return self._tag == 'shared_link_copy'

    def is_shared_link_create(self):
        """
        Check if the union tag is ``shared_link_create``.

        :rtype: bool
        """
        return self._tag == 'shared_link_create'

    def is_shared_link_disable(self):
        """
        Check if the union tag is ``shared_link_disable``.

        :rtype: bool
        """
        return self._tag == 'shared_link_disable'

    def is_shared_link_download(self):
        """
        Check if the union tag is ``shared_link_download``.

        :rtype: bool
        """
        return self._tag == 'shared_link_download'

    def is_shared_link_remove_expiry(self):
        """
        Check if the union tag is ``shared_link_remove_expiry``.

        :rtype: bool
        """
        return self._tag == 'shared_link_remove_expiry'

    def is_shared_link_settings_add_expiration(self):
        """
        Check if the union tag is ``shared_link_settings_add_expiration``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_add_expiration'

    def is_shared_link_settings_add_password(self):
        """
        Check if the union tag is ``shared_link_settings_add_password``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_add_password'

    def is_shared_link_settings_allow_download_disabled(self):
        """
        Check if the union tag is ``shared_link_settings_allow_download_disabled``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_allow_download_disabled'

    def is_shared_link_settings_allow_download_enabled(self):
        """
        Check if the union tag is ``shared_link_settings_allow_download_enabled``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_allow_download_enabled'

    def is_shared_link_settings_change_audience(self):
        """
        Check if the union tag is ``shared_link_settings_change_audience``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_audience'

    def is_shared_link_settings_change_expiration(self):
        """
        Check if the union tag is ``shared_link_settings_change_expiration``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_expiration'

    def is_shared_link_settings_change_password(self):
        """
        Check if the union tag is ``shared_link_settings_change_password``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_change_password'

    def is_shared_link_settings_remove_expiration(self):
        """
        Check if the union tag is ``shared_link_settings_remove_expiration``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_remove_expiration'

    def is_shared_link_settings_remove_password(self):
        """
        Check if the union tag is ``shared_link_settings_remove_password``.

        :rtype: bool
        """
        return self._tag == 'shared_link_settings_remove_password'

    def is_shared_link_share(self):
        """
        Check if the union tag is ``shared_link_share``.

        :rtype: bool
        """
        return self._tag == 'shared_link_share'

    def is_shared_link_view(self):
        """
        Check if the union tag is ``shared_link_view``.

        :rtype: bool
        """
        return self._tag == 'shared_link_view'

    def is_shared_note_opened(self):
        """
        Check if the union tag is ``shared_note_opened``.

        :rtype: bool
        """
        return self._tag == 'shared_note_opened'

    def is_shmodel_disable_downloads(self):
        """
        Check if the union tag is ``shmodel_disable_downloads``.

        :rtype: bool
        """
        return self._tag == 'shmodel_disable_downloads'

    def is_shmodel_enable_downloads(self):
        """
        Check if the union tag is ``shmodel_enable_downloads``.

        :rtype: bool
        """
        return self._tag == 'shmodel_enable_downloads'

    def is_shmodel_group_share(self):
        """
        Check if the union tag is ``shmodel_group_share``.

        :rtype: bool
        """
        return self._tag == 'shmodel_group_share'

    def is_showcase_access_granted(self):
        """
        Check if the union tag is ``showcase_access_granted``.

        :rtype: bool
        """
        return self._tag == 'showcase_access_granted'

    def is_showcase_add_member(self):
        """
        Check if the union tag is ``showcase_add_member``.

        :rtype: bool
        """
        return self._tag == 'showcase_add_member'

    def is_showcase_archived(self):
        """
        Check if the union tag is ``showcase_archived``.

        :rtype: bool
        """
        return self._tag == 'showcase_archived'

    def is_showcase_created(self):
        """
        Check if the union tag is ``showcase_created``.

        :rtype: bool
        """
        return self._tag == 'showcase_created'

    def is_showcase_delete_comment(self):
        """
        Check if the union tag is ``showcase_delete_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_delete_comment'

    def is_showcase_edited(self):
        """
        Check if the union tag is ``showcase_edited``.

        :rtype: bool
        """
        return self._tag == 'showcase_edited'

    def is_showcase_edit_comment(self):
        """
        Check if the union tag is ``showcase_edit_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_edit_comment'

    def is_showcase_file_added(self):
        """
        Check if the union tag is ``showcase_file_added``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_added'

    def is_showcase_file_download(self):
        """
        Check if the union tag is ``showcase_file_download``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_download'

    def is_showcase_file_removed(self):
        """
        Check if the union tag is ``showcase_file_removed``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_removed'

    def is_showcase_file_view(self):
        """
        Check if the union tag is ``showcase_file_view``.

        :rtype: bool
        """
        return self._tag == 'showcase_file_view'

    def is_showcase_permanently_deleted(self):
        """
        Check if the union tag is ``showcase_permanently_deleted``.

        :rtype: bool
        """
        return self._tag == 'showcase_permanently_deleted'

    def is_showcase_post_comment(self):
        """
        Check if the union tag is ``showcase_post_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_post_comment'

    def is_showcase_remove_member(self):
        """
        Check if the union tag is ``showcase_remove_member``.

        :rtype: bool
        """
        return self._tag == 'showcase_remove_member'

    def is_showcase_renamed(self):
        """
        Check if the union tag is ``showcase_renamed``.

        :rtype: bool
        """
        return self._tag == 'showcase_renamed'

    def is_showcase_request_access(self):
        """
        Check if the union tag is ``showcase_request_access``.

        :rtype: bool
        """
        return self._tag == 'showcase_request_access'

    def is_showcase_resolve_comment(self):
        """
        Check if the union tag is ``showcase_resolve_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_resolve_comment'

    def is_showcase_restored(self):
        """
        Check if the union tag is ``showcase_restored``.

        :rtype: bool
        """
        return self._tag == 'showcase_restored'

    def is_showcase_trashed(self):
        """
        Check if the union tag is ``showcase_trashed``.

        :rtype: bool
        """
        return self._tag == 'showcase_trashed'

    def is_showcase_trashed_deprecated(self):
        """
        Check if the union tag is ``showcase_trashed_deprecated``.

        :rtype: bool
        """
        return self._tag == 'showcase_trashed_deprecated'

    def is_showcase_unresolve_comment(self):
        """
        Check if the union tag is ``showcase_unresolve_comment``.

        :rtype: bool
        """
        return self._tag == 'showcase_unresolve_comment'

    def is_showcase_untrashed(self):
        """
        Check if the union tag is ``showcase_untrashed``.

        :rtype: bool
        """
        return self._tag == 'showcase_untrashed'

    def is_showcase_untrashed_deprecated(self):
        """
        Check if the union tag is ``showcase_untrashed_deprecated``.

        :rtype: bool
        """
        return self._tag == 'showcase_untrashed_deprecated'

    def is_showcase_view(self):
        """
        Check if the union tag is ``showcase_view``.

        :rtype: bool
        """
        return self._tag == 'showcase_view'

    def is_sso_add_cert(self):
        """
        Check if the union tag is ``sso_add_cert``.

        :rtype: bool
        """
        return self._tag == 'sso_add_cert'

    def is_sso_add_login_url(self):
        """
        Check if the union tag is ``sso_add_login_url``.

        :rtype: bool
        """
        return self._tag == 'sso_add_login_url'

    def is_sso_add_logout_url(self):
        """
        Check if the union tag is ``sso_add_logout_url``.

        :rtype: bool
        """
        return self._tag == 'sso_add_logout_url'

    def is_sso_change_cert(self):
        """
        Check if the union tag is ``sso_change_cert``.

        :rtype: bool
        """
        return self._tag == 'sso_change_cert'

    def is_sso_change_login_url(self):
        """
        Check if the union tag is ``sso_change_login_url``.

        :rtype: bool
        """
        return self._tag == 'sso_change_login_url'

    def is_sso_change_logout_url(self):
        """
        Check if the union tag is ``sso_change_logout_url``.

        :rtype: bool
        """
        return self._tag == 'sso_change_logout_url'

    def is_sso_change_saml_identity_mode(self):
        """
        Check if the union tag is ``sso_change_saml_identity_mode``.

        :rtype: bool
        """
        return self._tag == 'sso_change_saml_identity_mode'

    def is_sso_remove_cert(self):
        """
        Check if the union tag is ``sso_remove_cert``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_cert'

    def is_sso_remove_login_url(self):
        """
        Check if the union tag is ``sso_remove_login_url``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_login_url'

    def is_sso_remove_logout_url(self):
        """
        Check if the union tag is ``sso_remove_logout_url``.

        :rtype: bool
        """
        return self._tag == 'sso_remove_logout_url'

    def is_team_folder_change_status(self):
        """
        Check if the union tag is ``team_folder_change_status``.

        :rtype: bool
        """
        return self._tag == 'team_folder_change_status'

    def is_team_folder_create(self):
        """
        Check if the union tag is ``team_folder_create``.

        :rtype: bool
        """
        return self._tag == 'team_folder_create'

    def is_team_folder_downgrade(self):
        """
        Check if the union tag is ``team_folder_downgrade``.

        :rtype: bool
        """
        return self._tag == 'team_folder_downgrade'

    def is_team_folder_permanently_delete(self):
        """
        Check if the union tag is ``team_folder_permanently_delete``.

        :rtype: bool
        """
        return self._tag == 'team_folder_permanently_delete'

    def is_team_folder_rename(self):
        """
        Check if the union tag is ``team_folder_rename``.

        :rtype: bool
        """
        return self._tag == 'team_folder_rename'

    def is_team_selective_sync_settings_changed(self):
        """
        Check if the union tag is ``team_selective_sync_settings_changed``.

        :rtype: bool
        """
        return self._tag == 'team_selective_sync_settings_changed'

    def is_account_capture_change_policy(self):
        """
        Check if the union tag is ``account_capture_change_policy``.

        :rtype: bool
        """
        return self._tag == 'account_capture_change_policy'

    def is_admin_email_reminders_changed(self):
        """
        Check if the union tag is ``admin_email_reminders_changed``.

        :rtype: bool
        """
        return self._tag == 'admin_email_reminders_changed'

    def is_allow_download_disabled(self):
        """
        Check if the union tag is ``allow_download_disabled``.

        :rtype: bool
        """
        return self._tag == 'allow_download_disabled'

    def is_allow_download_enabled(self):
        """
        Check if the union tag is ``allow_download_enabled``.

        :rtype: bool
        """
        return self._tag == 'allow_download_enabled'

    def is_app_permissions_changed(self):
        """
        Check if the union tag is ``app_permissions_changed``.

        :rtype: bool
        """
        return self._tag == 'app_permissions_changed'

    def is_camera_uploads_policy_changed(self):
        """
        Check if the union tag is ``camera_uploads_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'camera_uploads_policy_changed'

    def is_capture_transcript_policy_changed(self):
        """
        Check if the union tag is ``capture_transcript_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'capture_transcript_policy_changed'

    def is_classification_change_policy(self):
        """
        Check if the union tag is ``classification_change_policy``.

        :rtype: bool
        """
        return self._tag == 'classification_change_policy'

    def is_computer_backup_policy_changed(self):
        """
        Check if the union tag is ``computer_backup_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'computer_backup_policy_changed'

    def is_content_administration_policy_changed(self):
        """
        Check if the union tag is ``content_administration_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'content_administration_policy_changed'

    def is_data_placement_restriction_change_policy(self):
        """
        Check if the union tag is ``data_placement_restriction_change_policy``.

        :rtype: bool
        """
        return self._tag == 'data_placement_restriction_change_policy'

    def is_data_placement_restriction_satisfy_policy(self):
        """
        Check if the union tag is ``data_placement_restriction_satisfy_policy``.

        :rtype: bool
        """
        return self._tag == 'data_placement_restriction_satisfy_policy'

    def is_device_approvals_add_exception(self):
        """
        Check if the union tag is ``device_approvals_add_exception``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_add_exception'

    def is_device_approvals_change_desktop_policy(self):
        """
        Check if the union tag is ``device_approvals_change_desktop_policy``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_desktop_policy'

    def is_device_approvals_change_mobile_policy(self):
        """
        Check if the union tag is ``device_approvals_change_mobile_policy``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_mobile_policy'

    def is_device_approvals_change_overage_action(self):
        """
        Check if the union tag is ``device_approvals_change_overage_action``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_overage_action'

    def is_device_approvals_change_unlink_action(self):
        """
        Check if the union tag is ``device_approvals_change_unlink_action``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_change_unlink_action'

    def is_device_approvals_remove_exception(self):
        """
        Check if the union tag is ``device_approvals_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'device_approvals_remove_exception'

    def is_directory_restrictions_add_members(self):
        """
        Check if the union tag is ``directory_restrictions_add_members``.

        :rtype: bool
        """
        return self._tag == 'directory_restrictions_add_members'

    def is_directory_restrictions_remove_members(self):
        """
        Check if the union tag is ``directory_restrictions_remove_members``.

        :rtype: bool
        """
        return self._tag == 'directory_restrictions_remove_members'

    def is_dropbox_passwords_policy_changed(self):
        """
        Check if the union tag is ``dropbox_passwords_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'dropbox_passwords_policy_changed'

    def is_email_ingest_policy_changed(self):
        """
        Check if the union tag is ``email_ingest_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'email_ingest_policy_changed'

    def is_emm_add_exception(self):
        """
        Check if the union tag is ``emm_add_exception``.

        :rtype: bool
        """
        return self._tag == 'emm_add_exception'

    def is_emm_change_policy(self):
        """
        Check if the union tag is ``emm_change_policy``.

        :rtype: bool
        """
        return self._tag == 'emm_change_policy'

    def is_emm_remove_exception(self):
        """
        Check if the union tag is ``emm_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'emm_remove_exception'

    def is_extended_version_history_change_policy(self):
        """
        Check if the union tag is ``extended_version_history_change_policy``.

        :rtype: bool
        """
        return self._tag == 'extended_version_history_change_policy'

    def is_external_drive_backup_policy_changed(self):
        """
        Check if the union tag is ``external_drive_backup_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'external_drive_backup_policy_changed'

    def is_file_comments_change_policy(self):
        """
        Check if the union tag is ``file_comments_change_policy``.

        :rtype: bool
        """
        return self._tag == 'file_comments_change_policy'

    def is_file_locking_policy_changed(self):
        """
        Check if the union tag is ``file_locking_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'file_locking_policy_changed'

    def is_file_provider_migration_policy_changed(self):
        """
        Check if the union tag is ``file_provider_migration_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'file_provider_migration_policy_changed'

    def is_file_requests_change_policy(self):
        """
        Check if the union tag is ``file_requests_change_policy``.

        :rtype: bool
        """
        return self._tag == 'file_requests_change_policy'

    def is_file_requests_emails_enabled(self):
        """
        Check if the union tag is ``file_requests_emails_enabled``.

        :rtype: bool
        """
        return self._tag == 'file_requests_emails_enabled'

    def is_file_requests_emails_restricted_to_team_only(self):
        """
        Check if the union tag is ``file_requests_emails_restricted_to_team_only``.

        :rtype: bool
        """
        return self._tag == 'file_requests_emails_restricted_to_team_only'

    def is_file_transfers_policy_changed(self):
        """
        Check if the union tag is ``file_transfers_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'file_transfers_policy_changed'

    def is_folder_link_restriction_policy_changed(self):
        """
        Check if the union tag is ``folder_link_restriction_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'folder_link_restriction_policy_changed'

    def is_google_sso_change_policy(self):
        """
        Check if the union tag is ``google_sso_change_policy``.

        :rtype: bool
        """
        return self._tag == 'google_sso_change_policy'

    def is_group_user_management_change_policy(self):
        """
        Check if the union tag is ``group_user_management_change_policy``.

        :rtype: bool
        """
        return self._tag == 'group_user_management_change_policy'

    def is_integration_policy_changed(self):
        """
        Check if the union tag is ``integration_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'integration_policy_changed'

    def is_invite_acceptance_email_policy_changed(self):
        """
        Check if the union tag is ``invite_acceptance_email_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'invite_acceptance_email_policy_changed'

    def is_member_requests_change_policy(self):
        """
        Check if the union tag is ``member_requests_change_policy``.

        :rtype: bool
        """
        return self._tag == 'member_requests_change_policy'

    def is_member_send_invite_policy_changed(self):
        """
        Check if the union tag is ``member_send_invite_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'member_send_invite_policy_changed'

    def is_member_space_limits_add_exception(self):
        """
        Check if the union tag is ``member_space_limits_add_exception``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_add_exception'

    def is_member_space_limits_change_caps_type_policy(self):
        """
        Check if the union tag is ``member_space_limits_change_caps_type_policy``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_caps_type_policy'

    def is_member_space_limits_change_policy(self):
        """
        Check if the union tag is ``member_space_limits_change_policy``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_change_policy'

    def is_member_space_limits_remove_exception(self):
        """
        Check if the union tag is ``member_space_limits_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'member_space_limits_remove_exception'

    def is_member_suggestions_change_policy(self):
        """
        Check if the union tag is ``member_suggestions_change_policy``.

        :rtype: bool
        """
        return self._tag == 'member_suggestions_change_policy'

    def is_microsoft_office_addin_change_policy(self):
        """
        Check if the union tag is ``microsoft_office_addin_change_policy``.

        :rtype: bool
        """
        return self._tag == 'microsoft_office_addin_change_policy'

    def is_network_control_change_policy(self):
        """
        Check if the union tag is ``network_control_change_policy``.

        :rtype: bool
        """
        return self._tag == 'network_control_change_policy'

    def is_paper_change_deployment_policy(self):
        """
        Check if the union tag is ``paper_change_deployment_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_deployment_policy'

    def is_paper_change_member_link_policy(self):
        """
        Check if the union tag is ``paper_change_member_link_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_member_link_policy'

    def is_paper_change_member_policy(self):
        """
        Check if the union tag is ``paper_change_member_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_member_policy'

    def is_paper_change_policy(self):
        """
        Check if the union tag is ``paper_change_policy``.

        :rtype: bool
        """
        return self._tag == 'paper_change_policy'

    def is_paper_default_folder_policy_changed(self):
        """
        Check if the union tag is ``paper_default_folder_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'paper_default_folder_policy_changed'

    def is_paper_desktop_policy_changed(self):
        """
        Check if the union tag is ``paper_desktop_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'paper_desktop_policy_changed'

    def is_paper_enabled_users_group_addition(self):
        """
        Check if the union tag is ``paper_enabled_users_group_addition``.

        :rtype: bool
        """
        return self._tag == 'paper_enabled_users_group_addition'

    def is_paper_enabled_users_group_removal(self):
        """
        Check if the union tag is ``paper_enabled_users_group_removal``.

        :rtype: bool
        """
        return self._tag == 'paper_enabled_users_group_removal'

    def is_password_strength_requirements_change_policy(self):
        """
        Check if the union tag is ``password_strength_requirements_change_policy``.

        :rtype: bool
        """
        return self._tag == 'password_strength_requirements_change_policy'

    def is_permanent_delete_change_policy(self):
        """
        Check if the union tag is ``permanent_delete_change_policy``.

        :rtype: bool
        """
        return self._tag == 'permanent_delete_change_policy'

    def is_reseller_support_change_policy(self):
        """
        Check if the union tag is ``reseller_support_change_policy``.

        :rtype: bool
        """
        return self._tag == 'reseller_support_change_policy'

    def is_rewind_policy_changed(self):
        """
        Check if the union tag is ``rewind_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'rewind_policy_changed'

    def is_send_for_signature_policy_changed(self):
        """
        Check if the union tag is ``send_for_signature_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'send_for_signature_policy_changed'

    def is_sharing_change_folder_join_policy(self):
        """
        Check if the union tag is ``sharing_change_folder_join_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_folder_join_policy'

    def is_sharing_change_link_allow_change_expiration_policy(self):
        """
        Check if the union tag is ``sharing_change_link_allow_change_expiration_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_allow_change_expiration_policy'

    def is_sharing_change_link_default_expiration_policy(self):
        """
        Check if the union tag is ``sharing_change_link_default_expiration_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_default_expiration_policy'

    def is_sharing_change_link_enforce_password_policy(self):
        """
        Check if the union tag is ``sharing_change_link_enforce_password_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_enforce_password_policy'

    def is_sharing_change_link_policy(self):
        """
        Check if the union tag is ``sharing_change_link_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_link_policy'

    def is_sharing_change_member_policy(self):
        """
        Check if the union tag is ``sharing_change_member_policy``.

        :rtype: bool
        """
        return self._tag == 'sharing_change_member_policy'

    def is_showcase_change_download_policy(self):
        """
        Check if the union tag is ``showcase_change_download_policy``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_download_policy'

    def is_showcase_change_enabled_policy(self):
        """
        Check if the union tag is ``showcase_change_enabled_policy``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_enabled_policy'

    def is_showcase_change_external_sharing_policy(self):
        """
        Check if the union tag is ``showcase_change_external_sharing_policy``.

        :rtype: bool
        """
        return self._tag == 'showcase_change_external_sharing_policy'

    def is_smarter_smart_sync_policy_changed(self):
        """
        Check if the union tag is ``smarter_smart_sync_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'smarter_smart_sync_policy_changed'

    def is_smart_sync_change_policy(self):
        """
        Check if the union tag is ``smart_sync_change_policy``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_change_policy'

    def is_smart_sync_not_opt_out(self):
        """
        Check if the union tag is ``smart_sync_not_opt_out``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_not_opt_out'

    def is_smart_sync_opt_out(self):
        """
        Check if the union tag is ``smart_sync_opt_out``.

        :rtype: bool
        """
        return self._tag == 'smart_sync_opt_out'

    def is_sso_change_policy(self):
        """
        Check if the union tag is ``sso_change_policy``.

        :rtype: bool
        """
        return self._tag == 'sso_change_policy'

    def is_team_branding_policy_changed(self):
        """
        Check if the union tag is ``team_branding_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'team_branding_policy_changed'

    def is_team_extensions_policy_changed(self):
        """
        Check if the union tag is ``team_extensions_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'team_extensions_policy_changed'

    def is_team_selective_sync_policy_changed(self):
        """
        Check if the union tag is ``team_selective_sync_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'team_selective_sync_policy_changed'

    def is_team_sharing_whitelist_subjects_changed(self):
        """
        Check if the union tag is ``team_sharing_whitelist_subjects_changed``.

        :rtype: bool
        """
        return self._tag == 'team_sharing_whitelist_subjects_changed'

    def is_tfa_add_exception(self):
        """
        Check if the union tag is ``tfa_add_exception``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_exception'

    def is_tfa_change_policy(self):
        """
        Check if the union tag is ``tfa_change_policy``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_policy'

    def is_tfa_remove_exception(self):
        """
        Check if the union tag is ``tfa_remove_exception``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_exception'

    def is_two_account_change_policy(self):
        """
        Check if the union tag is ``two_account_change_policy``.

        :rtype: bool
        """
        return self._tag == 'two_account_change_policy'

    def is_viewer_info_policy_changed(self):
        """
        Check if the union tag is ``viewer_info_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'viewer_info_policy_changed'

    def is_watermarking_policy_changed(self):
        """
        Check if the union tag is ``watermarking_policy_changed``.

        :rtype: bool
        """
        return self._tag == 'watermarking_policy_changed'

    def is_web_sessions_change_active_session_limit(self):
        """
        Check if the union tag is ``web_sessions_change_active_session_limit``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_active_session_limit'

    def is_web_sessions_change_fixed_length_policy(self):
        """
        Check if the union tag is ``web_sessions_change_fixed_length_policy``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_fixed_length_policy'

    def is_web_sessions_change_idle_length_policy(self):
        """
        Check if the union tag is ``web_sessions_change_idle_length_policy``.

        :rtype: bool
        """
        return self._tag == 'web_sessions_change_idle_length_policy'

    def is_data_residency_migration_request_successful(self):
        """
        Check if the union tag is ``data_residency_migration_request_successful``.

        :rtype: bool
        """
        return self._tag == 'data_residency_migration_request_successful'

    def is_data_residency_migration_request_unsuccessful(self):
        """
        Check if the union tag is ``data_residency_migration_request_unsuccessful``.

        :rtype: bool
        """
        return self._tag == 'data_residency_migration_request_unsuccessful'

    def is_team_merge_from(self):
        """
        Check if the union tag is ``team_merge_from``.

        :rtype: bool
        """
        return self._tag == 'team_merge_from'

    def is_team_merge_to(self):
        """
        Check if the union tag is ``team_merge_to``.

        :rtype: bool
        """
        return self._tag == 'team_merge_to'

    def is_team_profile_add_background(self):
        """
        Check if the union tag is ``team_profile_add_background``.

        :rtype: bool
        """
        return self._tag == 'team_profile_add_background'

    def is_team_profile_add_logo(self):
        """
        Check if the union tag is ``team_profile_add_logo``.

        :rtype: bool
        """
        return self._tag == 'team_profile_add_logo'

    def is_team_profile_change_background(self):
        """
        Check if the union tag is ``team_profile_change_background``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_background'

    def is_team_profile_change_default_language(self):
        """
        Check if the union tag is ``team_profile_change_default_language``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_default_language'

    def is_team_profile_change_logo(self):
        """
        Check if the union tag is ``team_profile_change_logo``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_logo'

    def is_team_profile_change_name(self):
        """
        Check if the union tag is ``team_profile_change_name``.

        :rtype: bool
        """
        return self._tag == 'team_profile_change_name'

    def is_team_profile_remove_background(self):
        """
        Check if the union tag is ``team_profile_remove_background``.

        :rtype: bool
        """
        return self._tag == 'team_profile_remove_background'

    def is_team_profile_remove_logo(self):
        """
        Check if the union tag is ``team_profile_remove_logo``.

        :rtype: bool
        """
        return self._tag == 'team_profile_remove_logo'

    def is_tfa_add_backup_phone(self):
        """
        Check if the union tag is ``tfa_add_backup_phone``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_backup_phone'

    def is_tfa_add_security_key(self):
        """
        Check if the union tag is ``tfa_add_security_key``.

        :rtype: bool
        """
        return self._tag == 'tfa_add_security_key'

    def is_tfa_change_backup_phone(self):
        """
        Check if the union tag is ``tfa_change_backup_phone``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_backup_phone'

    def is_tfa_change_status(self):
        """
        Check if the union tag is ``tfa_change_status``.

        :rtype: bool
        """
        return self._tag == 'tfa_change_status'

    def is_tfa_remove_backup_phone(self):
        """
        Check if the union tag is ``tfa_remove_backup_phone``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_backup_phone'

    def is_tfa_remove_security_key(self):
        """
        Check if the union tag is ``tfa_remove_security_key``.

        :rtype: bool
        """
        return self._tag == 'tfa_remove_security_key'

    def is_tfa_reset(self):
        """
        Check if the union tag is ``tfa_reset``.

        :rtype: bool
        """
        return self._tag == 'tfa_reset'

    def is_changed_enterprise_admin_role(self):
        """
        Check if the union tag is ``changed_enterprise_admin_role``.

        :rtype: bool
        """
        return self._tag == 'changed_enterprise_admin_role'

    def is_changed_enterprise_connected_team_status(self):
        """
        Check if the union tag is ``changed_enterprise_connected_team_status``.

        :rtype: bool
        """
        return self._tag == 'changed_enterprise_connected_team_status'

    def is_ended_enterprise_admin_session(self):
        """
        Check if the union tag is ``ended_enterprise_admin_session``.

        :rtype: bool
        """
        return self._tag == 'ended_enterprise_admin_session'

    def is_ended_enterprise_admin_session_deprecated(self):
        """
        Check if the union tag is ``ended_enterprise_admin_session_deprecated``.

        :rtype: bool
        """
        return self._tag == 'ended_enterprise_admin_session_deprecated'

    def is_enterprise_settings_locking(self):
        """
        Check if the union tag is ``enterprise_settings_locking``.

        :rtype: bool
        """
        return self._tag == 'enterprise_settings_locking'

    def is_guest_admin_change_status(self):
        """
        Check if the union tag is ``guest_admin_change_status``.

        :rtype: bool
        """
        return self._tag == 'guest_admin_change_status'

    def is_started_enterprise_admin_session(self):
        """
        Check if the union tag is ``started_enterprise_admin_session``.

        :rtype: bool
        """
        return self._tag == 'started_enterprise_admin_session'

    def is_team_merge_request_accepted(self):
        """
        Check if the union tag is ``team_merge_request_accepted``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted'

    def is_team_merge_request_accepted_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_accepted_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_shown_to_primary_team'

    def is_team_merge_request_accepted_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_accepted_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_accepted_shown_to_secondary_team'

    def is_team_merge_request_auto_canceled(self):
        """
        Check if the union tag is ``team_merge_request_auto_canceled``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_auto_canceled'

    def is_team_merge_request_canceled(self):
        """
        Check if the union tag is ``team_merge_request_canceled``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled'

    def is_team_merge_request_canceled_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_canceled_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_shown_to_primary_team'

    def is_team_merge_request_canceled_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_canceled_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_canceled_shown_to_secondary_team'

    def is_team_merge_request_expired(self):
        """
        Check if the union tag is ``team_merge_request_expired``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired'

    def is_team_merge_request_expired_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_expired_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_shown_to_primary_team'

    def is_team_merge_request_expired_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_expired_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_expired_shown_to_secondary_team'

    def is_team_merge_request_rejected_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_rejected_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_rejected_shown_to_primary_team'

    def is_team_merge_request_rejected_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_rejected_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_rejected_shown_to_secondary_team'

    def is_team_merge_request_reminder(self):
        """
        Check if the union tag is ``team_merge_request_reminder``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder'

    def is_team_merge_request_reminder_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_reminder_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_shown_to_primary_team'

    def is_team_merge_request_reminder_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_reminder_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_reminder_shown_to_secondary_team'

    def is_team_merge_request_revoked(self):
        """
        Check if the union tag is ``team_merge_request_revoked``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_revoked'

    def is_team_merge_request_sent_shown_to_primary_team(self):
        """
        Check if the union tag is ``team_merge_request_sent_shown_to_primary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_sent_shown_to_primary_team'

    def is_team_merge_request_sent_shown_to_secondary_team(self):
        """
        Check if the union tag is ``team_merge_request_sent_shown_to_secondary_team``.

        :rtype: bool
        """
        return self._tag == 'team_merge_request_sent_shown_to_secondary_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(EventTypeArg, self)._process_custom_annotations(annotation_type, field_path, processor)

EventTypeArg_validator = bv.Union(EventTypeArg)

class ExportMembersReportDetails(bb.Struct):
    """
    Created member data report.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExportMembersReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExportMembersReportDetails_validator = bv.Struct(ExportMembersReportDetails)

class ExportMembersReportFailDetails(bb.Struct):
    """
    Failed to create members data report.

    :ivar team_log.ExportMembersReportFailDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExportMembersReportFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExportMembersReportFailDetails_validator = bv.Struct(ExportMembersReportFailDetails)

class ExportMembersReportFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExportMembersReportFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExportMembersReportFailType_validator = bv.Struct(ExportMembersReportFailType)

class ExportMembersReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExportMembersReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExportMembersReportType_validator = bv.Struct(ExportMembersReportType)

class ExtendedVersionHistoryChangePolicyDetails(bb.Struct):
    """
    Accepted/opted out of extended version history.

    :ivar team_log.ExtendedVersionHistoryChangePolicyDetails.new_value: New
        extended version history policy.
    :ivar team_log.ExtendedVersionHistoryChangePolicyDetails.previous_value:
        Previous extended version history policy. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ExtendedVersionHistoryPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ExtendedVersionHistoryPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExtendedVersionHistoryChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExtendedVersionHistoryChangePolicyDetails_validator = bv.Struct(ExtendedVersionHistoryChangePolicyDetails)

class ExtendedVersionHistoryChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExtendedVersionHistoryChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExtendedVersionHistoryChangePolicyType_validator = bv.Struct(ExtendedVersionHistoryChangePolicyType)

class ExtendedVersionHistoryPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    explicitly_limited = None
    # Attribute is overwritten below the class definition
    explicitly_unlimited = None
    # Attribute is overwritten below the class definition
    implicitly_limited = None
    # Attribute is overwritten below the class definition
    implicitly_unlimited = None
    # Attribute is overwritten below the class definition
    other = None

    def is_explicitly_limited(self):
        """
        Check if the union tag is ``explicitly_limited``.

        :rtype: bool
        """
        return self._tag == 'explicitly_limited'

    def is_explicitly_unlimited(self):
        """
        Check if the union tag is ``explicitly_unlimited``.

        :rtype: bool
        """
        return self._tag == 'explicitly_unlimited'

    def is_implicitly_limited(self):
        """
        Check if the union tag is ``implicitly_limited``.

        :rtype: bool
        """
        return self._tag == 'implicitly_limited'

    def is_implicitly_unlimited(self):
        """
        Check if the union tag is ``implicitly_unlimited``.

        :rtype: bool
        """
        return self._tag == 'implicitly_unlimited'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExtendedVersionHistoryPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ExtendedVersionHistoryPolicy_validator = bv.Union(ExtendedVersionHistoryPolicy)

class ExternalDriveBackupEligibilityStatus(bb.Union):
    """
    External Drive Backup eligibility status

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    exceed_license_cap = None
    # Attribute is overwritten below the class definition
    success = None
    # Attribute is overwritten below the class definition
    other = None

    def is_exceed_license_cap(self):
        """
        Check if the union tag is ``exceed_license_cap``.

        :rtype: bool
        """
        return self._tag == 'exceed_license_cap'

    def is_success(self):
        """
        Check if the union tag is ``success``.

        :rtype: bool
        """
        return self._tag == 'success'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupEligibilityStatus, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupEligibilityStatus_validator = bv.Union(ExternalDriveBackupEligibilityStatus)

class ExternalDriveBackupEligibilityStatusCheckedDetails(bb.Struct):
    """
    Checked external drive backup eligibility status.

    :ivar
        team_log.ExternalDriveBackupEligibilityStatusCheckedDetails.desktop_device_session_info:
        Device's session logged information.
    :ivar team_log.ExternalDriveBackupEligibilityStatusCheckedDetails.status:
        Current eligibility status of external drive backup.
    :ivar
        team_log.ExternalDriveBackupEligibilityStatusCheckedDetails.number_of_external_drive_backup:
        Total number of valid external drive backup for all the team members.
    """

    __slots__ = [
        '_desktop_device_session_info_value',
        '_status_value',
        '_number_of_external_drive_backup_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 desktop_device_session_info=None,
                 status=None,
                 number_of_external_drive_backup=None):
        self._desktop_device_session_info_value = bb.NOT_SET
        self._status_value = bb.NOT_SET
        self._number_of_external_drive_backup_value = bb.NOT_SET
        if desktop_device_session_info is not None:
            self.desktop_device_session_info = desktop_device_session_info
        if status is not None:
            self.status = status
        if number_of_external_drive_backup is not None:
            self.number_of_external_drive_backup = number_of_external_drive_backup

    # Instance attribute type: DesktopDeviceSessionLogInfo (validator is set below)
    desktop_device_session_info = bb.Attribute("desktop_device_session_info", user_defined=True)

    # Instance attribute type: ExternalDriveBackupEligibilityStatus (validator is set below)
    status = bb.Attribute("status", user_defined=True)

    # Instance attribute type: int (validator is set below)
    number_of_external_drive_backup = bb.Attribute("number_of_external_drive_backup")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupEligibilityStatusCheckedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupEligibilityStatusCheckedDetails_validator = bv.Struct(ExternalDriveBackupEligibilityStatusCheckedDetails)

class ExternalDriveBackupEligibilityStatusCheckedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupEligibilityStatusCheckedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupEligibilityStatusCheckedType_validator = bv.Struct(ExternalDriveBackupEligibilityStatusCheckedType)

class ExternalDriveBackupPolicy(bb.Union):
    """
    Policy for controlling team access to external drive backup feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupPolicy_validator = bv.Union(ExternalDriveBackupPolicy)

class ExternalDriveBackupPolicyChangedDetails(bb.Struct):
    """
    Changed external drive backup policy for team.

    :ivar team_log.ExternalDriveBackupPolicyChangedDetails.new_value: New
        external drive backup policy.
    :ivar team_log.ExternalDriveBackupPolicyChangedDetails.previous_value:
        Previous external drive backup policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ExternalDriveBackupPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ExternalDriveBackupPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupPolicyChangedDetails_validator = bv.Struct(ExternalDriveBackupPolicyChangedDetails)

class ExternalDriveBackupPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupPolicyChangedType_validator = bv.Struct(ExternalDriveBackupPolicyChangedType)

class ExternalDriveBackupStatus(bb.Union):
    """
    External Drive Backup status

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    broken = None
    # Attribute is overwritten below the class definition
    created = None
    # Attribute is overwritten below the class definition
    created_or_broken = None
    # Attribute is overwritten below the class definition
    deleted = None
    # Attribute is overwritten below the class definition
    empty = None
    # Attribute is overwritten below the class definition
    unknown = None
    # Attribute is overwritten below the class definition
    other = None

    def is_broken(self):
        """
        Check if the union tag is ``broken``.

        :rtype: bool
        """
        return self._tag == 'broken'

    def is_created(self):
        """
        Check if the union tag is ``created``.

        :rtype: bool
        """
        return self._tag == 'created'

    def is_created_or_broken(self):
        """
        Check if the union tag is ``created_or_broken``.

        :rtype: bool
        """
        return self._tag == 'created_or_broken'

    def is_deleted(self):
        """
        Check if the union tag is ``deleted``.

        :rtype: bool
        """
        return self._tag == 'deleted'

    def is_empty(self):
        """
        Check if the union tag is ``empty``.

        :rtype: bool
        """
        return self._tag == 'empty'

    def is_unknown(self):
        """
        Check if the union tag is ``unknown``.

        :rtype: bool
        """
        return self._tag == 'unknown'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupStatus, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupStatus_validator = bv.Union(ExternalDriveBackupStatus)

class ExternalDriveBackupStatusChangedDetails(bb.Struct):
    """
    Modified external drive backup.

    :ivar
        team_log.ExternalDriveBackupStatusChangedDetails.desktop_device_session_info:
        Device's session logged information.
    :ivar team_log.ExternalDriveBackupStatusChangedDetails.previous_value:
        Previous status of this external drive backup.
    :ivar team_log.ExternalDriveBackupStatusChangedDetails.new_value: Next
        status of this external drive backup.
    """

    __slots__ = [
        '_desktop_device_session_info_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 desktop_device_session_info=None,
                 previous_value=None,
                 new_value=None):
        self._desktop_device_session_info_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if desktop_device_session_info is not None:
            self.desktop_device_session_info = desktop_device_session_info
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: DesktopDeviceSessionLogInfo (validator is set below)
    desktop_device_session_info = bb.Attribute("desktop_device_session_info", user_defined=True)

    # Instance attribute type: ExternalDriveBackupStatus (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: ExternalDriveBackupStatus (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupStatusChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupStatusChangedDetails_validator = bv.Struct(ExternalDriveBackupStatusChangedDetails)

class ExternalDriveBackupStatusChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalDriveBackupStatusChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalDriveBackupStatusChangedType_validator = bv.Struct(ExternalDriveBackupStatusChangedType)

class ExternalSharingCreateReportDetails(bb.Struct):
    """
    Created External sharing report.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalSharingCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalSharingCreateReportDetails_validator = bv.Struct(ExternalSharingCreateReportDetails)

class ExternalSharingCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalSharingCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalSharingCreateReportType_validator = bv.Struct(ExternalSharingCreateReportType)

class ExternalSharingReportFailedDetails(bb.Struct):
    """
    Couldn't create External sharing report.

    :ivar team_log.ExternalSharingReportFailedDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalSharingReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalSharingReportFailedDetails_validator = bv.Struct(ExternalSharingReportFailedDetails)

class ExternalSharingReportFailedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalSharingReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalSharingReportFailedType_validator = bv.Struct(ExternalSharingReportFailedType)

class ExternalUserLogInfo(bb.Struct):
    """
    A user without a Dropbox account.

    :ivar team_log.ExternalUserLogInfo.user_identifier: An external user
        identifier.
    :ivar team_log.ExternalUserLogInfo.identifier_type: Identifier type.
    """

    __slots__ = [
        '_user_identifier_value',
        '_identifier_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 user_identifier=None,
                 identifier_type=None):
        self._user_identifier_value = bb.NOT_SET
        self._identifier_type_value = bb.NOT_SET
        if user_identifier is not None:
            self.user_identifier = user_identifier
        if identifier_type is not None:
            self.identifier_type = identifier_type

    # Instance attribute type: str (validator is set below)
    user_identifier = bb.Attribute("user_identifier")

    # Instance attribute type: IdentifierType (validator is set below)
    identifier_type = bb.Attribute("identifier_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ExternalUserLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ExternalUserLogInfo_validator = bv.Struct(ExternalUserLogInfo)

class FailureDetailsLogInfo(bb.Struct):
    """
    Provides details about a failure

    :ivar team_log.FailureDetailsLogInfo.user_friendly_message: A user friendly
        explanation of the error.
    :ivar team_log.FailureDetailsLogInfo.technical_error_message: A technical
        explanation of the error. This is relevant for some errors.
    """

    __slots__ = [
        '_user_friendly_message_value',
        '_technical_error_message_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 user_friendly_message=None,
                 technical_error_message=None):
        self._user_friendly_message_value = bb.NOT_SET
        self._technical_error_message_value = bb.NOT_SET
        if user_friendly_message is not None:
            self.user_friendly_message = user_friendly_message
        if technical_error_message is not None:
            self.technical_error_message = technical_error_message

    # Instance attribute type: str (validator is set below)
    user_friendly_message = bb.Attribute("user_friendly_message", nullable=True)

    # Instance attribute type: str (validator is set below)
    technical_error_message = bb.Attribute("technical_error_message", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FailureDetailsLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

FailureDetailsLogInfo_validator = bv.Struct(FailureDetailsLogInfo)

class FedAdminRole(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    enterprise_admin = None
    # Attribute is overwritten below the class definition
    not_enterprise_admin = None
    # Attribute is overwritten below the class definition
    other = None

    def is_enterprise_admin(self):
        """
        Check if the union tag is ``enterprise_admin``.

        :rtype: bool
        """
        return self._tag == 'enterprise_admin'

    def is_not_enterprise_admin(self):
        """
        Check if the union tag is ``not_enterprise_admin``.

        :rtype: bool
        """
        return self._tag == 'not_enterprise_admin'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FedAdminRole, self)._process_custom_annotations(annotation_type, field_path, processor)

FedAdminRole_validator = bv.Union(FedAdminRole)

class FedExtraDetails(bb.Union):
    """
    More details about the organization or team.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar OrganizationDetails FedExtraDetails.organization: More details about
        the organization.
    :ivar TeamDetails FedExtraDetails.team: More details about the team.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def organization(cls, val):
        """
        Create an instance of this class set to the ``organization`` tag with
        value ``val``.

        :param OrganizationDetails val:
        :rtype: FedExtraDetails
        """
        return cls('organization', val)

    @classmethod
    def team(cls, val):
        """
        Create an instance of this class set to the ``team`` tag with value
        ``val``.

        :param TeamDetails val:
        :rtype: FedExtraDetails
        """
        return cls('team', val)

    def is_organization(self):
        """
        Check if the union tag is ``organization``.

        :rtype: bool
        """
        return self._tag == 'organization'

    def is_team(self):
        """
        Check if the union tag is ``team``.

        :rtype: bool
        """
        return self._tag == 'team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_organization(self):
        """
        More details about the organization.

        Only call this if :meth:`is_organization` is true.

        :rtype: OrganizationDetails
        """
        if not self.is_organization():
            raise AttributeError("tag 'organization' not set")
        return self._value

    def get_team(self):
        """
        More details about the team.

        Only call this if :meth:`is_team` is true.

        :rtype: TeamDetails
        """
        if not self.is_team():
            raise AttributeError("tag 'team' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FedExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FedExtraDetails_validator = bv.Union(FedExtraDetails)

class FedHandshakeAction(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    accepted_invite = None
    # Attribute is overwritten below the class definition
    canceled_invite = None
    # Attribute is overwritten below the class definition
    invite_expired = None
    # Attribute is overwritten below the class definition
    invited = None
    # Attribute is overwritten below the class definition
    rejected_invite = None
    # Attribute is overwritten below the class definition
    removed_team = None
    # Attribute is overwritten below the class definition
    other = None

    def is_accepted_invite(self):
        """
        Check if the union tag is ``accepted_invite``.

        :rtype: bool
        """
        return self._tag == 'accepted_invite'

    def is_canceled_invite(self):
        """
        Check if the union tag is ``canceled_invite``.

        :rtype: bool
        """
        return self._tag == 'canceled_invite'

    def is_invite_expired(self):
        """
        Check if the union tag is ``invite_expired``.

        :rtype: bool
        """
        return self._tag == 'invite_expired'

    def is_invited(self):
        """
        Check if the union tag is ``invited``.

        :rtype: bool
        """
        return self._tag == 'invited'

    def is_rejected_invite(self):
        """
        Check if the union tag is ``rejected_invite``.

        :rtype: bool
        """
        return self._tag == 'rejected_invite'

    def is_removed_team(self):
        """
        Check if the union tag is ``removed_team``.

        :rtype: bool
        """
        return self._tag == 'removed_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FedHandshakeAction, self)._process_custom_annotations(annotation_type, field_path, processor)

FedHandshakeAction_validator = bv.Union(FedHandshakeAction)

class FederationStatusChangeAdditionalInfo(bb.Union):
    """
    Additional information about the organization or connected team

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar ConnectedTeamName
        FederationStatusChangeAdditionalInfo.connected_team_name: The name of
        the team.
    :ivar NonTrustedTeamDetails
        FederationStatusChangeAdditionalInfo.non_trusted_team_details: The email
        to which the request was sent.
    :ivar OrganizationName
        FederationStatusChangeAdditionalInfo.organization_name: The name of the
        organization.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def connected_team_name(cls, val):
        """
        Create an instance of this class set to the ``connected_team_name`` tag
        with value ``val``.

        :param ConnectedTeamName val:
        :rtype: FederationStatusChangeAdditionalInfo
        """
        return cls('connected_team_name', val)

    @classmethod
    def non_trusted_team_details(cls, val):
        """
        Create an instance of this class set to the ``non_trusted_team_details``
        tag with value ``val``.

        :param NonTrustedTeamDetails val:
        :rtype: FederationStatusChangeAdditionalInfo
        """
        return cls('non_trusted_team_details', val)

    @classmethod
    def organization_name(cls, val):
        """
        Create an instance of this class set to the ``organization_name`` tag
        with value ``val``.

        :param OrganizationName val:
        :rtype: FederationStatusChangeAdditionalInfo
        """
        return cls('organization_name', val)

    def is_connected_team_name(self):
        """
        Check if the union tag is ``connected_team_name``.

        :rtype: bool
        """
        return self._tag == 'connected_team_name'

    def is_non_trusted_team_details(self):
        """
        Check if the union tag is ``non_trusted_team_details``.

        :rtype: bool
        """
        return self._tag == 'non_trusted_team_details'

    def is_organization_name(self):
        """
        Check if the union tag is ``organization_name``.

        :rtype: bool
        """
        return self._tag == 'organization_name'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_connected_team_name(self):
        """
        The name of the team.

        Only call this if :meth:`is_connected_team_name` is true.

        :rtype: ConnectedTeamName
        """
        if not self.is_connected_team_name():
            raise AttributeError("tag 'connected_team_name' not set")
        return self._value

    def get_non_trusted_team_details(self):
        """
        The email to which the request was sent.

        Only call this if :meth:`is_non_trusted_team_details` is true.

        :rtype: NonTrustedTeamDetails
        """
        if not self.is_non_trusted_team_details():
            raise AttributeError("tag 'non_trusted_team_details' not set")
        return self._value

    def get_organization_name(self):
        """
        The name of the organization.

        Only call this if :meth:`is_organization_name` is true.

        :rtype: OrganizationName
        """
        if not self.is_organization_name():
            raise AttributeError("tag 'organization_name' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FederationStatusChangeAdditionalInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

FederationStatusChangeAdditionalInfo_validator = bv.Union(FederationStatusChangeAdditionalInfo)

class FileAddCommentDetails(bb.Struct):
    """
    Added file comment.

    :ivar team_log.FileAddCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_comment_text_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileAddCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileAddCommentDetails_validator = bv.Struct(FileAddCommentDetails)

class FileAddCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileAddCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileAddCommentType_validator = bv.Struct(FileAddCommentType)

class FileAddDetails(bb.Struct):
    """
    Added files and/or folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileAddDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileAddDetails_validator = bv.Struct(FileAddDetails)

class FileAddType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileAddType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileAddType_validator = bv.Struct(FileAddType)

class FileChangeCommentSubscriptionDetails(bb.Struct):
    """
    Subscribed to or unsubscribed from comment notifications for file.

    :ivar team_log.FileChangeCommentSubscriptionDetails.new_value: New file
        comment subscription.
    :ivar team_log.FileChangeCommentSubscriptionDetails.previous_value: Previous
        file comment subscription. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: FileCommentNotificationPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: FileCommentNotificationPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileChangeCommentSubscriptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileChangeCommentSubscriptionDetails_validator = bv.Struct(FileChangeCommentSubscriptionDetails)

class FileChangeCommentSubscriptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileChangeCommentSubscriptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileChangeCommentSubscriptionType_validator = bv.Struct(FileChangeCommentSubscriptionType)

class FileCommentNotificationPolicy(bb.Union):
    """
    Enable or disable file comments notifications

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileCommentNotificationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

FileCommentNotificationPolicy_validator = bv.Union(FileCommentNotificationPolicy)

class FileCommentsChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled commenting on team files.

    :ivar team_log.FileCommentsChangePolicyDetails.new_value: New commenting on
        team files policy.
    :ivar team_log.FileCommentsChangePolicyDetails.previous_value: Previous
        commenting on team files policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: FileCommentsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: FileCommentsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileCommentsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileCommentsChangePolicyDetails_validator = bv.Struct(FileCommentsChangePolicyDetails)

class FileCommentsChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileCommentsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileCommentsChangePolicyType_validator = bv.Struct(FileCommentsChangePolicyType)

class FileCommentsPolicy(bb.Union):
    """
    File comments policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileCommentsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

FileCommentsPolicy_validator = bv.Union(FileCommentsPolicy)

class FileCopyDetails(bb.Struct):
    """
    Copied files and/or folders.

    :ivar team_log.FileCopyDetails.relocate_action_details: Relocate action
        details.
    """

    __slots__ = [
        '_relocate_action_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 relocate_action_details=None):
        self._relocate_action_details_value = bb.NOT_SET
        if relocate_action_details is not None:
            self.relocate_action_details = relocate_action_details

    # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below)
    relocate_action_details = bb.Attribute("relocate_action_details")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileCopyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileCopyDetails_validator = bv.Struct(FileCopyDetails)

class FileCopyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileCopyType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileCopyType_validator = bv.Struct(FileCopyType)

class FileDeleteCommentDetails(bb.Struct):
    """
    Deleted file comment.

    :ivar team_log.FileDeleteCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_comment_text_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileDeleteCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileDeleteCommentDetails_validator = bv.Struct(FileDeleteCommentDetails)

class FileDeleteCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileDeleteCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileDeleteCommentType_validator = bv.Struct(FileDeleteCommentType)

class FileDeleteDetails(bb.Struct):
    """
    Deleted files and/or folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileDeleteDetails_validator = bv.Struct(FileDeleteDetails)

class FileDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileDeleteType_validator = bv.Struct(FileDeleteType)

class FileDownloadDetails(bb.Struct):
    """
    Downloaded files and/or folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileDownloadDetails_validator = bv.Struct(FileDownloadDetails)

class FileDownloadType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileDownloadType_validator = bv.Struct(FileDownloadType)

class FileEditCommentDetails(bb.Struct):
    """
    Edited file comment.

    :ivar team_log.FileEditCommentDetails.comment_text: Comment text.
    :ivar team_log.FileEditCommentDetails.previous_comment_text: Previous
        comment text.
    """

    __slots__ = [
        '_comment_text_value',
        '_previous_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_comment_text=None,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        self._previous_comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text
        if previous_comment_text is not None:
            self.previous_comment_text = previous_comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    # Instance attribute type: str (validator is set below)
    previous_comment_text = bb.Attribute("previous_comment_text")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileEditCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileEditCommentDetails_validator = bv.Struct(FileEditCommentDetails)

class FileEditCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileEditCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileEditCommentType_validator = bv.Struct(FileEditCommentType)

class FileEditDetails(bb.Struct):
    """
    Edited files.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileEditDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileEditDetails_validator = bv.Struct(FileEditDetails)

class FileEditType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileEditType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileEditType_validator = bv.Struct(FileEditType)

class FileGetCopyReferenceDetails(bb.Struct):
    """
    Created copy reference to file/folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileGetCopyReferenceDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileGetCopyReferenceDetails_validator = bv.Struct(FileGetCopyReferenceDetails)

class FileGetCopyReferenceType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileGetCopyReferenceType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileGetCopyReferenceType_validator = bv.Struct(FileGetCopyReferenceType)

class FileLikeCommentDetails(bb.Struct):
    """
    Liked file comment.

    :ivar team_log.FileLikeCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_comment_text_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLikeCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLikeCommentDetails_validator = bv.Struct(FileLikeCommentDetails)

class FileLikeCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLikeCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLikeCommentType_validator = bv.Struct(FileLikeCommentType)

class FileLockingLockStatusChangedDetails(bb.Struct):
    """
    Locked/unlocked editing for a file.

    :ivar team_log.FileLockingLockStatusChangedDetails.previous_value: Previous
        lock status of the file.
    :ivar team_log.FileLockingLockStatusChangedDetails.new_value: New lock
        status of the file.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: LockStatus (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: LockStatus (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLockingLockStatusChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLockingLockStatusChangedDetails_validator = bv.Struct(FileLockingLockStatusChangedDetails)

class FileLockingLockStatusChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLockingLockStatusChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLockingLockStatusChangedType_validator = bv.Struct(FileLockingLockStatusChangedType)

class FileLockingPolicyChangedDetails(bb.Struct):
    """
    Changed file locking policy for team.

    :ivar team_log.FileLockingPolicyChangedDetails.new_value: New file locking
        policy.
    :ivar team_log.FileLockingPolicyChangedDetails.previous_value: Previous file
        locking policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.FileLockingPolicyState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.FileLockingPolicyState (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLockingPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLockingPolicyChangedDetails_validator = bv.Struct(FileLockingPolicyChangedDetails)

class FileLockingPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLockingPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLockingPolicyChangedType_validator = bv.Struct(FileLockingPolicyChangedType)

class FileOrFolderLogInfo(bb.Struct):
    """
    Generic information relevant both for files and folders

    :ivar team_log.FileOrFolderLogInfo.path: Path relative to event context.
    :ivar team_log.FileOrFolderLogInfo.display_name: Display name.
    :ivar team_log.FileOrFolderLogInfo.file_id: Unique ID.
    :ivar team_log.FileOrFolderLogInfo.file_size: File or folder size in bytes.
    """

    __slots__ = [
        '_path_value',
        '_display_name_value',
        '_file_id_value',
        '_file_size_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 path=None,
                 display_name=None,
                 file_id=None,
                 file_size=None):
        self._path_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        self._file_id_value = bb.NOT_SET
        self._file_size_value = bb.NOT_SET
        if path is not None:
            self.path = path
        if display_name is not None:
            self.display_name = display_name
        if file_id is not None:
            self.file_id = file_id
        if file_size is not None:
            self.file_size = file_size

    # Instance attribute type: PathLogInfo (validator is set below)
    path = bb.Attribute("path", user_defined=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    file_id = bb.Attribute("file_id", nullable=True)

    # Instance attribute type: int (validator is set below)
    file_size = bb.Attribute("file_size", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileOrFolderLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

FileOrFolderLogInfo_validator = bv.Struct(FileOrFolderLogInfo)

class FileLogInfo(FileOrFolderLogInfo):
    """
    File's logged information.
    """

    __slots__ = [
    ]

    _has_required_fields = True

    def __init__(self,
                 path=None,
                 display_name=None,
                 file_id=None,
                 file_size=None):
        super(FileLogInfo, self).__init__(path,
                                          display_name,
                                          file_id,
                                          file_size)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

FileLogInfo_validator = bv.Struct(FileLogInfo)

class FileMoveDetails(bb.Struct):
    """
    Moved files and/or folders.

    :ivar team_log.FileMoveDetails.relocate_action_details: Relocate action
        details.
    """

    __slots__ = [
        '_relocate_action_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 relocate_action_details=None):
        self._relocate_action_details_value = bb.NOT_SET
        if relocate_action_details is not None:
            self.relocate_action_details = relocate_action_details

    # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below)
    relocate_action_details = bb.Attribute("relocate_action_details")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileMoveDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileMoveDetails_validator = bv.Struct(FileMoveDetails)

class FileMoveType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileMoveType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileMoveType_validator = bv.Struct(FileMoveType)

class FilePermanentlyDeleteDetails(bb.Struct):
    """
    Permanently deleted files and/or folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FilePermanentlyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FilePermanentlyDeleteDetails_validator = bv.Struct(FilePermanentlyDeleteDetails)

class FilePermanentlyDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FilePermanentlyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

FilePermanentlyDeleteType_validator = bv.Struct(FilePermanentlyDeleteType)

class FilePreviewDetails(bb.Struct):
    """
    Previewed files and/or folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FilePreviewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FilePreviewDetails_validator = bv.Struct(FilePreviewDetails)

class FilePreviewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FilePreviewType, self)._process_custom_annotations(annotation_type, field_path, processor)

FilePreviewType_validator = bv.Struct(FilePreviewType)

class FileProviderMigrationPolicyChangedDetails(bb.Struct):
    """
    Changed File Provider Migration policy for team.

    :ivar team_log.FileProviderMigrationPolicyChangedDetails.new_value: To.
    :ivar team_log.FileProviderMigrationPolicyChangedDetails.previous_value:
        From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.FileProviderMigrationPolicyState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.FileProviderMigrationPolicyState (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileProviderMigrationPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileProviderMigrationPolicyChangedDetails_validator = bv.Struct(FileProviderMigrationPolicyChangedDetails)

class FileProviderMigrationPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileProviderMigrationPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileProviderMigrationPolicyChangedType_validator = bv.Struct(FileProviderMigrationPolicyChangedType)

class FileRenameDetails(bb.Struct):
    """
    Renamed files and/or folders.

    :ivar team_log.FileRenameDetails.relocate_action_details: Relocate action
        details.
    """

    __slots__ = [
        '_relocate_action_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 relocate_action_details=None):
        self._relocate_action_details_value = bb.NOT_SET
        if relocate_action_details is not None:
            self.relocate_action_details = relocate_action_details

    # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below)
    relocate_action_details = bb.Attribute("relocate_action_details")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRenameDetails_validator = bv.Struct(FileRenameDetails)

class FileRenameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRenameType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRenameType_validator = bv.Struct(FileRenameType)

class FileRequestChangeDetails(bb.Struct):
    """
    Changed file request.

    :ivar team_log.FileRequestChangeDetails.file_request_id: File request id.
        Might be missing due to historical data gap.
    :ivar team_log.FileRequestChangeDetails.previous_details: Previous file
        request details. Might be missing due to historical data gap.
    :ivar team_log.FileRequestChangeDetails.new_details: New file request
        details.
    """

    __slots__ = [
        '_file_request_id_value',
        '_previous_details_value',
        '_new_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_details=None,
                 file_request_id=None,
                 previous_details=None):
        self._file_request_id_value = bb.NOT_SET
        self._previous_details_value = bb.NOT_SET
        self._new_details_value = bb.NOT_SET
        if file_request_id is not None:
            self.file_request_id = file_request_id
        if previous_details is not None:
            self.previous_details = previous_details
        if new_details is not None:
            self.new_details = new_details

    # Instance attribute type: str (validator is set below)
    file_request_id = bb.Attribute("file_request_id", nullable=True)

    # Instance attribute type: FileRequestDetails (validator is set below)
    previous_details = bb.Attribute("previous_details", nullable=True, user_defined=True)

    # Instance attribute type: FileRequestDetails (validator is set below)
    new_details = bb.Attribute("new_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestChangeDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestChangeDetails_validator = bv.Struct(FileRequestChangeDetails)

class FileRequestChangeType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestChangeType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestChangeType_validator = bv.Struct(FileRequestChangeType)

class FileRequestCloseDetails(bb.Struct):
    """
    Closed file request.

    :ivar team_log.FileRequestCloseDetails.file_request_id: File request id.
        Might be missing due to historical data gap.
    :ivar team_log.FileRequestCloseDetails.previous_details: Previous file
        request details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_file_request_id_value',
        '_previous_details_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 file_request_id=None,
                 previous_details=None):
        self._file_request_id_value = bb.NOT_SET
        self._previous_details_value = bb.NOT_SET
        if file_request_id is not None:
            self.file_request_id = file_request_id
        if previous_details is not None:
            self.previous_details = previous_details

    # Instance attribute type: str (validator is set below)
    file_request_id = bb.Attribute("file_request_id", nullable=True)

    # Instance attribute type: FileRequestDetails (validator is set below)
    previous_details = bb.Attribute("previous_details", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestCloseDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestCloseDetails_validator = bv.Struct(FileRequestCloseDetails)

class FileRequestCloseType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestCloseType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestCloseType_validator = bv.Struct(FileRequestCloseType)

class FileRequestCreateDetails(bb.Struct):
    """
    Created file request.

    :ivar team_log.FileRequestCreateDetails.file_request_id: File request id.
        Might be missing due to historical data gap.
    :ivar team_log.FileRequestCreateDetails.request_details: File request
        details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_file_request_id_value',
        '_request_details_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 file_request_id=None,
                 request_details=None):
        self._file_request_id_value = bb.NOT_SET
        self._request_details_value = bb.NOT_SET
        if file_request_id is not None:
            self.file_request_id = file_request_id
        if request_details is not None:
            self.request_details = request_details

    # Instance attribute type: str (validator is set below)
    file_request_id = bb.Attribute("file_request_id", nullable=True)

    # Instance attribute type: FileRequestDetails (validator is set below)
    request_details = bb.Attribute("request_details", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestCreateDetails_validator = bv.Struct(FileRequestCreateDetails)

class FileRequestCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestCreateType_validator = bv.Struct(FileRequestCreateType)

class FileRequestDeadline(bb.Struct):
    """
    File request deadline

    :ivar team_log.FileRequestDeadline.deadline: The deadline for this file
        request. Might be missing due to historical data gap.
    :ivar team_log.FileRequestDeadline.allow_late_uploads: If set, allow uploads
        after the deadline has passed.
    """

    __slots__ = [
        '_deadline_value',
        '_allow_late_uploads_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 deadline=None,
                 allow_late_uploads=None):
        self._deadline_value = bb.NOT_SET
        self._allow_late_uploads_value = bb.NOT_SET
        if deadline is not None:
            self.deadline = deadline
        if allow_late_uploads is not None:
            self.allow_late_uploads = allow_late_uploads

    # Instance attribute type: datetime.datetime (validator is set below)
    deadline = bb.Attribute("deadline", nullable=True)

    # Instance attribute type: str (validator is set below)
    allow_late_uploads = bb.Attribute("allow_late_uploads", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestDeadline, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestDeadline_validator = bv.Struct(FileRequestDeadline)

class FileRequestDeleteDetails(bb.Struct):
    """
    Delete file request.

    :ivar team_log.FileRequestDeleteDetails.file_request_id: File request id.
        Might be missing due to historical data gap.
    :ivar team_log.FileRequestDeleteDetails.previous_details: Previous file
        request details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_file_request_id_value',
        '_previous_details_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 file_request_id=None,
                 previous_details=None):
        self._file_request_id_value = bb.NOT_SET
        self._previous_details_value = bb.NOT_SET
        if file_request_id is not None:
            self.file_request_id = file_request_id
        if previous_details is not None:
            self.previous_details = previous_details

    # Instance attribute type: str (validator is set below)
    file_request_id = bb.Attribute("file_request_id", nullable=True)

    # Instance attribute type: FileRequestDetails (validator is set below)
    previous_details = bb.Attribute("previous_details", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestDeleteDetails_validator = bv.Struct(FileRequestDeleteDetails)

class FileRequestDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestDeleteType_validator = bv.Struct(FileRequestDeleteType)

class FileRequestDetails(bb.Struct):
    """
    File request details

    :ivar team_log.FileRequestDetails.asset_index: Asset position in the Assets
        list.
    :ivar team_log.FileRequestDetails.deadline: File request deadline.
    """

    __slots__ = [
        '_asset_index_value',
        '_deadline_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 asset_index=None,
                 deadline=None):
        self._asset_index_value = bb.NOT_SET
        self._deadline_value = bb.NOT_SET
        if asset_index is not None:
            self.asset_index = asset_index
        if deadline is not None:
            self.deadline = deadline

    # Instance attribute type: int (validator is set below)
    asset_index = bb.Attribute("asset_index")

    # Instance attribute type: FileRequestDeadline (validator is set below)
    deadline = bb.Attribute("deadline", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestDetails_validator = bv.Struct(FileRequestDetails)

class FileRequestReceiveFileDetails(bb.Struct):
    """
    Received files for file request.

    :ivar team_log.FileRequestReceiveFileDetails.file_request_id: File request
        id. Might be missing due to historical data gap.
    :ivar team_log.FileRequestReceiveFileDetails.file_request_details: File
        request details. Might be missing due to historical data gap.
    :ivar team_log.FileRequestReceiveFileDetails.submitted_file_names: Submitted
        file names.
    :ivar team_log.FileRequestReceiveFileDetails.submitter_name: The name as
        provided by the submitter.
    :ivar team_log.FileRequestReceiveFileDetails.submitter_email: The email as
        provided by the submitter.
    """

    __slots__ = [
        '_file_request_id_value',
        '_file_request_details_value',
        '_submitted_file_names_value',
        '_submitter_name_value',
        '_submitter_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 submitted_file_names=None,
                 file_request_id=None,
                 file_request_details=None,
                 submitter_name=None,
                 submitter_email=None):
        self._file_request_id_value = bb.NOT_SET
        self._file_request_details_value = bb.NOT_SET
        self._submitted_file_names_value = bb.NOT_SET
        self._submitter_name_value = bb.NOT_SET
        self._submitter_email_value = bb.NOT_SET
        if file_request_id is not None:
            self.file_request_id = file_request_id
        if file_request_details is not None:
            self.file_request_details = file_request_details
        if submitted_file_names is not None:
            self.submitted_file_names = submitted_file_names
        if submitter_name is not None:
            self.submitter_name = submitter_name
        if submitter_email is not None:
            self.submitter_email = submitter_email

    # Instance attribute type: str (validator is set below)
    file_request_id = bb.Attribute("file_request_id", nullable=True)

    # Instance attribute type: FileRequestDetails (validator is set below)
    file_request_details = bb.Attribute("file_request_details", nullable=True, user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    submitted_file_names = bb.Attribute("submitted_file_names")

    # Instance attribute type: str (validator is set below)
    submitter_name = bb.Attribute("submitter_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    submitter_email = bb.Attribute("submitter_email", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestReceiveFileDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestReceiveFileDetails_validator = bv.Struct(FileRequestReceiveFileDetails)

class FileRequestReceiveFileType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestReceiveFileType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestReceiveFileType_validator = bv.Struct(FileRequestReceiveFileType)

class FileRequestsChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled file requests.

    :ivar team_log.FileRequestsChangePolicyDetails.new_value: New file requests
        policy.
    :ivar team_log.FileRequestsChangePolicyDetails.previous_value: Previous file
        requests policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: FileRequestsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: FileRequestsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsChangePolicyDetails_validator = bv.Struct(FileRequestsChangePolicyDetails)

class FileRequestsChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsChangePolicyType_validator = bv.Struct(FileRequestsChangePolicyType)

class FileRequestsEmailsEnabledDetails(bb.Struct):
    """
    Enabled file request emails for everyone.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsEmailsEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsEmailsEnabledDetails_validator = bv.Struct(FileRequestsEmailsEnabledDetails)

class FileRequestsEmailsEnabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsEmailsEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsEmailsEnabledType_validator = bv.Struct(FileRequestsEmailsEnabledType)

class FileRequestsEmailsRestrictedToTeamOnlyDetails(bb.Struct):
    """
    Enabled file request emails for team.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsEmailsRestrictedToTeamOnlyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsEmailsRestrictedToTeamOnlyDetails_validator = bv.Struct(FileRequestsEmailsRestrictedToTeamOnlyDetails)

class FileRequestsEmailsRestrictedToTeamOnlyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsEmailsRestrictedToTeamOnlyType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsEmailsRestrictedToTeamOnlyType_validator = bv.Struct(FileRequestsEmailsRestrictedToTeamOnlyType)

class FileRequestsPolicy(bb.Union):
    """
    File requests policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRequestsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRequestsPolicy_validator = bv.Union(FileRequestsPolicy)

class FileResolveCommentDetails(bb.Struct):
    """
    Resolved file comment.

    :ivar team_log.FileResolveCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_comment_text_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileResolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileResolveCommentDetails_validator = bv.Struct(FileResolveCommentDetails)

class FileResolveCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileResolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileResolveCommentType_validator = bv.Struct(FileResolveCommentType)

class FileRestoreDetails(bb.Struct):
    """
    Restored deleted files and/or folders.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRestoreDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRestoreDetails_validator = bv.Struct(FileRestoreDetails)

class FileRestoreType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRestoreType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRestoreType_validator = bv.Struct(FileRestoreType)

class FileRevertDetails(bb.Struct):
    """
    Reverted files to previous version.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRevertDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRevertDetails_validator = bv.Struct(FileRevertDetails)

class FileRevertType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRevertType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRevertType_validator = bv.Struct(FileRevertType)

class FileRollbackChangesDetails(bb.Struct):
    """
    Rolled back file actions.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRollbackChangesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRollbackChangesDetails_validator = bv.Struct(FileRollbackChangesDetails)

class FileRollbackChangesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileRollbackChangesType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileRollbackChangesType_validator = bv.Struct(FileRollbackChangesType)

class FileSaveCopyReferenceDetails(bb.Struct):
    """
    Saved file/folder using copy reference.

    :ivar team_log.FileSaveCopyReferenceDetails.relocate_action_details:
        Relocate action details.
    """

    __slots__ = [
        '_relocate_action_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 relocate_action_details=None):
        self._relocate_action_details_value = bb.NOT_SET
        if relocate_action_details is not None:
            self.relocate_action_details = relocate_action_details

    # Instance attribute type: list of [RelocateAssetReferencesLogInfo] (validator is set below)
    relocate_action_details = bb.Attribute("relocate_action_details")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileSaveCopyReferenceDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileSaveCopyReferenceDetails_validator = bv.Struct(FileSaveCopyReferenceDetails)

class FileSaveCopyReferenceType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileSaveCopyReferenceType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileSaveCopyReferenceType_validator = bv.Struct(FileSaveCopyReferenceType)

class FileTransfersFileAddDetails(bb.Struct):
    """
    Transfer files added.

    :ivar team_log.FileTransfersFileAddDetails.file_transfer_id: Transfer id.
    """

    __slots__ = [
        '_file_transfer_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 file_transfer_id=None):
        self._file_transfer_id_value = bb.NOT_SET
        if file_transfer_id is not None:
            self.file_transfer_id = file_transfer_id

    # Instance attribute type: str (validator is set below)
    file_transfer_id = bb.Attribute("file_transfer_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersFileAddDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersFileAddDetails_validator = bv.Struct(FileTransfersFileAddDetails)

class FileTransfersFileAddType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersFileAddType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersFileAddType_validator = bv.Struct(FileTransfersFileAddType)

class FileTransfersPolicy(bb.Union):
    """
    File transfers policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersPolicy_validator = bv.Union(FileTransfersPolicy)

class FileTransfersPolicyChangedDetails(bb.Struct):
    """
    Changed file transfers policy for team.

    :ivar team_log.FileTransfersPolicyChangedDetails.new_value: New file
        transfers policy.
    :ivar team_log.FileTransfersPolicyChangedDetails.previous_value: Previous
        file transfers policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: FileTransfersPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: FileTransfersPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersPolicyChangedDetails_validator = bv.Struct(FileTransfersPolicyChangedDetails)

class FileTransfersPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersPolicyChangedType_validator = bv.Struct(FileTransfersPolicyChangedType)

class FileTransfersTransferDeleteDetails(bb.Struct):
    """
    Deleted transfer.

    :ivar team_log.FileTransfersTransferDeleteDetails.file_transfer_id: Transfer
        id.
    """

    __slots__ = [
        '_file_transfer_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 file_transfer_id=None):
        self._file_transfer_id_value = bb.NOT_SET
        if file_transfer_id is not None:
            self.file_transfer_id = file_transfer_id

    # Instance attribute type: str (validator is set below)
    file_transfer_id = bb.Attribute("file_transfer_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferDeleteDetails_validator = bv.Struct(FileTransfersTransferDeleteDetails)

class FileTransfersTransferDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferDeleteType_validator = bv.Struct(FileTransfersTransferDeleteType)

class FileTransfersTransferDownloadDetails(bb.Struct):
    """
    Transfer downloaded.

    :ivar team_log.FileTransfersTransferDownloadDetails.file_transfer_id:
        Transfer id.
    """

    __slots__ = [
        '_file_transfer_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 file_transfer_id=None):
        self._file_transfer_id_value = bb.NOT_SET
        if file_transfer_id is not None:
            self.file_transfer_id = file_transfer_id

    # Instance attribute type: str (validator is set below)
    file_transfer_id = bb.Attribute("file_transfer_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferDownloadDetails_validator = bv.Struct(FileTransfersTransferDownloadDetails)

class FileTransfersTransferDownloadType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferDownloadType_validator = bv.Struct(FileTransfersTransferDownloadType)

class FileTransfersTransferSendDetails(bb.Struct):
    """
    Sent transfer.

    :ivar team_log.FileTransfersTransferSendDetails.file_transfer_id: Transfer
        id.
    """

    __slots__ = [
        '_file_transfer_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 file_transfer_id=None):
        self._file_transfer_id_value = bb.NOT_SET
        if file_transfer_id is not None:
            self.file_transfer_id = file_transfer_id

    # Instance attribute type: str (validator is set below)
    file_transfer_id = bb.Attribute("file_transfer_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferSendDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferSendDetails_validator = bv.Struct(FileTransfersTransferSendDetails)

class FileTransfersTransferSendType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferSendType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferSendType_validator = bv.Struct(FileTransfersTransferSendType)

class FileTransfersTransferViewDetails(bb.Struct):
    """
    Viewed transfer.

    :ivar team_log.FileTransfersTransferViewDetails.file_transfer_id: Transfer
        id.
    """

    __slots__ = [
        '_file_transfer_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 file_transfer_id=None):
        self._file_transfer_id_value = bb.NOT_SET
        if file_transfer_id is not None:
            self.file_transfer_id = file_transfer_id

    # Instance attribute type: str (validator is set below)
    file_transfer_id = bb.Attribute("file_transfer_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferViewDetails_validator = bv.Struct(FileTransfersTransferViewDetails)

class FileTransfersTransferViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileTransfersTransferViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileTransfersTransferViewType_validator = bv.Struct(FileTransfersTransferViewType)

class FileUnlikeCommentDetails(bb.Struct):
    """
    Unliked file comment.

    :ivar team_log.FileUnlikeCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_comment_text_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileUnlikeCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileUnlikeCommentDetails_validator = bv.Struct(FileUnlikeCommentDetails)

class FileUnlikeCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileUnlikeCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileUnlikeCommentType_validator = bv.Struct(FileUnlikeCommentType)

class FileUnresolveCommentDetails(bb.Struct):
    """
    Unresolved file comment.

    :ivar team_log.FileUnresolveCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_comment_text_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 comment_text=None):
        self._comment_text_value = bb.NOT_SET
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileUnresolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FileUnresolveCommentDetails_validator = bv.Struct(FileUnresolveCommentDetails)

class FileUnresolveCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FileUnresolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

FileUnresolveCommentType_validator = bv.Struct(FileUnresolveCommentType)

class FolderLinkRestrictionPolicy(bb.Union):
    """
    Policy for deciding whether applying link restrictions on all team owned
    folders

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderLinkRestrictionPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderLinkRestrictionPolicy_validator = bv.Union(FolderLinkRestrictionPolicy)

class FolderLinkRestrictionPolicyChangedDetails(bb.Struct):
    """
    Changed folder link restrictions policy for team.

    :ivar team_log.FolderLinkRestrictionPolicyChangedDetails.new_value: To.
    :ivar team_log.FolderLinkRestrictionPolicyChangedDetails.previous_value:
        From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: FolderLinkRestrictionPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: FolderLinkRestrictionPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderLinkRestrictionPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderLinkRestrictionPolicyChangedDetails_validator = bv.Struct(FolderLinkRestrictionPolicyChangedDetails)

class FolderLinkRestrictionPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderLinkRestrictionPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderLinkRestrictionPolicyChangedType_validator = bv.Struct(FolderLinkRestrictionPolicyChangedType)

class FolderLogInfo(FileOrFolderLogInfo):
    """
    Folder's logged information.

    :ivar team_log.FolderLogInfo.file_count: Number of files within the folder.
    """

    __slots__ = [
        '_file_count_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 path=None,
                 display_name=None,
                 file_id=None,
                 file_size=None,
                 file_count=None):
        super(FolderLogInfo, self).__init__(path,
                                            display_name,
                                            file_id,
                                            file_size)
        self._file_count_value = bb.NOT_SET
        if file_count is not None:
            self.file_count = file_count

    # Instance attribute type: int (validator is set below)
    file_count = bb.Attribute("file_count", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderLogInfo_validator = bv.Struct(FolderLogInfo)

class FolderOverviewDescriptionChangedDetails(bb.Struct):
    """
    Updated folder overview.

    :ivar
        team_log.FolderOverviewDescriptionChangedDetails.folder_overview_location_asset:
        Folder Overview location position in the Assets list.
    """

    __slots__ = [
        '_folder_overview_location_asset_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 folder_overview_location_asset=None):
        self._folder_overview_location_asset_value = bb.NOT_SET
        if folder_overview_location_asset is not None:
            self.folder_overview_location_asset = folder_overview_location_asset

    # Instance attribute type: int (validator is set below)
    folder_overview_location_asset = bb.Attribute("folder_overview_location_asset")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderOverviewDescriptionChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderOverviewDescriptionChangedDetails_validator = bv.Struct(FolderOverviewDescriptionChangedDetails)

class FolderOverviewDescriptionChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderOverviewDescriptionChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderOverviewDescriptionChangedType_validator = bv.Struct(FolderOverviewDescriptionChangedType)

class FolderOverviewItemPinnedDetails(bb.Struct):
    """
    Pinned item to folder overview.

    :ivar
        team_log.FolderOverviewItemPinnedDetails.folder_overview_location_asset:
        Folder Overview location position in the Assets list.
    :ivar team_log.FolderOverviewItemPinnedDetails.pinned_items_asset_indices:
        Pinned items positions in the Assets list.
    """

    __slots__ = [
        '_folder_overview_location_asset_value',
        '_pinned_items_asset_indices_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 folder_overview_location_asset=None,
                 pinned_items_asset_indices=None):
        self._folder_overview_location_asset_value = bb.NOT_SET
        self._pinned_items_asset_indices_value = bb.NOT_SET
        if folder_overview_location_asset is not None:
            self.folder_overview_location_asset = folder_overview_location_asset
        if pinned_items_asset_indices is not None:
            self.pinned_items_asset_indices = pinned_items_asset_indices

    # Instance attribute type: int (validator is set below)
    folder_overview_location_asset = bb.Attribute("folder_overview_location_asset")

    # Instance attribute type: list of [int] (validator is set below)
    pinned_items_asset_indices = bb.Attribute("pinned_items_asset_indices")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderOverviewItemPinnedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderOverviewItemPinnedDetails_validator = bv.Struct(FolderOverviewItemPinnedDetails)

class FolderOverviewItemPinnedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderOverviewItemPinnedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderOverviewItemPinnedType_validator = bv.Struct(FolderOverviewItemPinnedType)

class FolderOverviewItemUnpinnedDetails(bb.Struct):
    """
    Unpinned item from folder overview.

    :ivar
        team_log.FolderOverviewItemUnpinnedDetails.folder_overview_location_asset:
        Folder Overview location position in the Assets list.
    :ivar team_log.FolderOverviewItemUnpinnedDetails.pinned_items_asset_indices:
        Pinned items positions in the Assets list.
    """

    __slots__ = [
        '_folder_overview_location_asset_value',
        '_pinned_items_asset_indices_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 folder_overview_location_asset=None,
                 pinned_items_asset_indices=None):
        self._folder_overview_location_asset_value = bb.NOT_SET
        self._pinned_items_asset_indices_value = bb.NOT_SET
        if folder_overview_location_asset is not None:
            self.folder_overview_location_asset = folder_overview_location_asset
        if pinned_items_asset_indices is not None:
            self.pinned_items_asset_indices = pinned_items_asset_indices

    # Instance attribute type: int (validator is set below)
    folder_overview_location_asset = bb.Attribute("folder_overview_location_asset")

    # Instance attribute type: list of [int] (validator is set below)
    pinned_items_asset_indices = bb.Attribute("pinned_items_asset_indices")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderOverviewItemUnpinnedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderOverviewItemUnpinnedDetails_validator = bv.Struct(FolderOverviewItemUnpinnedDetails)

class FolderOverviewItemUnpinnedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(FolderOverviewItemUnpinnedType, self)._process_custom_annotations(annotation_type, field_path, processor)

FolderOverviewItemUnpinnedType_validator = bv.Struct(FolderOverviewItemUnpinnedType)

class GeoLocationLogInfo(bb.Struct):
    """
    Geographic location details.

    :ivar team_log.GeoLocationLogInfo.city: City name.
    :ivar team_log.GeoLocationLogInfo.region: Region name.
    :ivar team_log.GeoLocationLogInfo.country: Country code.
    :ivar team_log.GeoLocationLogInfo.ip_address: IP address.
    """

    __slots__ = [
        '_city_value',
        '_region_value',
        '_country_value',
        '_ip_address_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 ip_address=None,
                 city=None,
                 region=None,
                 country=None):
        self._city_value = bb.NOT_SET
        self._region_value = bb.NOT_SET
        self._country_value = bb.NOT_SET
        self._ip_address_value = bb.NOT_SET
        if city is not None:
            self.city = city
        if region is not None:
            self.region = region
        if country is not None:
            self.country = country
        if ip_address is not None:
            self.ip_address = ip_address

    # Instance attribute type: str (validator is set below)
    city = bb.Attribute("city", nullable=True)

    # Instance attribute type: str (validator is set below)
    region = bb.Attribute("region", nullable=True)

    # Instance attribute type: str (validator is set below)
    country = bb.Attribute("country", nullable=True)

    # Instance attribute type: str (validator is set below)
    ip_address = bb.Attribute("ip_address")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GeoLocationLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

GeoLocationLogInfo_validator = bv.Struct(GeoLocationLogInfo)

class GetTeamEventsArg(bb.Struct):
    """
    :ivar team_log.GetTeamEventsArg.limit: The maximal number of results to
        return per call. Note that some calls may not return ``limit`` number of
        events, and may even return no events, even with `has_more` set to true.
        In this case, callers should fetch again using
        :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue`.
    :ivar team_log.GetTeamEventsArg.account_id: Filter the events by account ID.
        Return only events with this account_id as either Actor, Context, or
        Participants.
    :ivar team_log.GetTeamEventsArg.time: Filter by time range.
    :ivar team_log.GetTeamEventsArg.category: Filter the returned events to a
        single category. Note that category shouldn't be provided together with
        event_type.
    :ivar team_log.GetTeamEventsArg.event_type: Filter the returned events to a
        single event type. Note that event_type shouldn't be provided together
        with category.
    """

    __slots__ = [
        '_limit_value',
        '_account_id_value',
        '_time_value',
        '_category_value',
        '_event_type_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 limit=None,
                 account_id=None,
                 time=None,
                 category=None,
                 event_type=None):
        self._limit_value = bb.NOT_SET
        self._account_id_value = bb.NOT_SET
        self._time_value = bb.NOT_SET
        self._category_value = bb.NOT_SET
        self._event_type_value = bb.NOT_SET
        if limit is not None:
            self.limit = limit
        if account_id is not None:
            self.account_id = account_id
        if time is not None:
            self.time = time
        if category is not None:
            self.category = category
        if event_type is not None:
            self.event_type = event_type

    # Instance attribute type: int (validator is set below)
    limit = bb.Attribute("limit")

    # Instance attribute type: str (validator is set below)
    account_id = bb.Attribute("account_id", nullable=True)

    # Instance attribute type: team_common.TimeRange (validator is set below)
    time = bb.Attribute("time", nullable=True, user_defined=True)

    # Instance attribute type: EventCategory (validator is set below)
    category = bb.Attribute("category", nullable=True, user_defined=True)

    # Instance attribute type: EventTypeArg (validator is set below)
    event_type = bb.Attribute("event_type", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GetTeamEventsArg, self)._process_custom_annotations(annotation_type, field_path, processor)

GetTeamEventsArg_validator = bv.Struct(GetTeamEventsArg)

class GetTeamEventsContinueArg(bb.Struct):
    """
    :ivar team_log.GetTeamEventsContinueArg.cursor: Indicates from what point to
        get the next set of events.
    """

    __slots__ = [
        '_cursor_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 cursor=None):
        self._cursor_value = bb.NOT_SET
        if cursor is not None:
            self.cursor = cursor

    # Instance attribute type: str (validator is set below)
    cursor = bb.Attribute("cursor")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GetTeamEventsContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor)

GetTeamEventsContinueArg_validator = bv.Struct(GetTeamEventsContinueArg)

class GetTeamEventsContinueError(bb.Union):
    """
    Errors that can be raised when calling
    :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue`.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar team_log.GetTeamEventsContinueError.bad_cursor: Bad cursor.
    :ivar datetime.datetime team_log.GetTeamEventsContinueError.reset: Cursors
        are intended to be used quickly. Individual cursor values are normally
        valid for days, but in rare cases may be reset sooner. Cursor reset
        errors should be handled by fetching a new cursor from
        :route:`get_events`. The associated value is the approximate timestamp
        of the most recent event returned by the cursor. This should be used as
        a resumption point when calling :route:`get_events` to obtain a new
        cursor.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    bad_cursor = None
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def reset(cls, val):
        """
        Create an instance of this class set to the ``reset`` tag with value
        ``val``.

        :param datetime.datetime val:
        :rtype: GetTeamEventsContinueError
        """
        return cls('reset', val)

    def is_bad_cursor(self):
        """
        Check if the union tag is ``bad_cursor``.

        :rtype: bool
        """
        return self._tag == 'bad_cursor'

    def is_reset(self):
        """
        Check if the union tag is ``reset``.

        :rtype: bool
        """
        return self._tag == 'reset'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_reset(self):
        """
        Cursors are intended to be used quickly. Individual cursor values are
        normally valid for days, but in rare cases may be reset sooner. Cursor
        reset errors should be handled by fetching a new cursor from
        :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events`. The
        associated value is the approximate timestamp of the most recent event
        returned by the cursor. This should be used as a resumption point when
        calling :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events` to
        obtain a new cursor.

        Only call this if :meth:`is_reset` is true.

        :rtype: datetime.datetime
        """
        if not self.is_reset():
            raise AttributeError("tag 'reset' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GetTeamEventsContinueError, self)._process_custom_annotations(annotation_type, field_path, processor)

GetTeamEventsContinueError_validator = bv.Union(GetTeamEventsContinueError)

class GetTeamEventsError(bb.Union):
    """
    Errors that can be raised when calling
    :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events`.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar team_log.GetTeamEventsError.account_id_not_found: No user found
        matching the provided account_id.
    :ivar team_log.GetTeamEventsError.invalid_time_range: Invalid time range.
    :ivar team_log.GetTeamEventsError.invalid_filters: Invalid filters. Do not
        specify both event_type and category parameters for the same call.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    account_id_not_found = None
    # Attribute is overwritten below the class definition
    invalid_time_range = None
    # Attribute is overwritten below the class definition
    invalid_filters = None
    # Attribute is overwritten below the class definition
    other = None

    def is_account_id_not_found(self):
        """
        Check if the union tag is ``account_id_not_found``.

        :rtype: bool
        """
        return self._tag == 'account_id_not_found'

    def is_invalid_time_range(self):
        """
        Check if the union tag is ``invalid_time_range``.

        :rtype: bool
        """
        return self._tag == 'invalid_time_range'

    def is_invalid_filters(self):
        """
        Check if the union tag is ``invalid_filters``.

        :rtype: bool
        """
        return self._tag == 'invalid_filters'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GetTeamEventsError, self)._process_custom_annotations(annotation_type, field_path, processor)

GetTeamEventsError_validator = bv.Union(GetTeamEventsError)

class GetTeamEventsResult(bb.Struct):
    """
    :ivar team_log.GetTeamEventsResult.events: List of events. Note that events
        are not guaranteed to be sorted by their timestamp value.
    :ivar team_log.GetTeamEventsResult.cursor: Pass the cursor into
        :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue` to
        obtain additional events. The value of ``cursor`` may change for each
        response from
        :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue`,
        regardless of the value of ``has_more``; older cursor strings may
        expire. Thus, callers should ensure that they update their cursor based
        on the latest value of ``cursor`` after each call, and poll regularly if
        they wish to poll for new events. Callers should handle reset exceptions
        for expired cursors.
    :ivar team_log.GetTeamEventsResult.has_more: Is true if there may be
        additional events that have not been returned yet. An additional call to
        :meth:`dropbox.dropbox_client.Dropbox.team_log_get_events_continue` can
        retrieve them. Note that ``has_more`` may be ``True``, even if
        ``events`` is empty.
    """

    __slots__ = [
        '_events_value',
        '_cursor_value',
        '_has_more_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 events=None,
                 cursor=None,
                 has_more=None):
        self._events_value = bb.NOT_SET
        self._cursor_value = bb.NOT_SET
        self._has_more_value = bb.NOT_SET
        if events is not None:
            self.events = events
        if cursor is not None:
            self.cursor = cursor
        if has_more is not None:
            self.has_more = has_more

    # Instance attribute type: list of [TeamEvent] (validator is set below)
    events = bb.Attribute("events")

    # Instance attribute type: str (validator is set below)
    cursor = bb.Attribute("cursor")

    # Instance attribute type: bool (validator is set below)
    has_more = bb.Attribute("has_more")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GetTeamEventsResult, self)._process_custom_annotations(annotation_type, field_path, processor)

GetTeamEventsResult_validator = bv.Struct(GetTeamEventsResult)

class GoogleSsoChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled Google single sign-on for team.

    :ivar team_log.GoogleSsoChangePolicyDetails.new_value: New Google single
        sign-on policy.
    :ivar team_log.GoogleSsoChangePolicyDetails.previous_value: Previous Google
        single sign-on policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: GoogleSsoPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: GoogleSsoPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GoogleSsoChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GoogleSsoChangePolicyDetails_validator = bv.Struct(GoogleSsoChangePolicyDetails)

class GoogleSsoChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GoogleSsoChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

GoogleSsoChangePolicyType_validator = bv.Struct(GoogleSsoChangePolicyType)

class GoogleSsoPolicy(bb.Union):
    """
    Google SSO policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GoogleSsoPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

GoogleSsoPolicy_validator = bv.Union(GoogleSsoPolicy)

class GovernancePolicyAddFolderFailedDetails(bb.Struct):
    """
    Couldn't add a folder to a policy.

    :ivar team_log.GovernancePolicyAddFolderFailedDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyAddFolderFailedDetails.name: Policy name.
    :ivar team_log.GovernancePolicyAddFolderFailedDetails.policy_type: Policy
        type.
    :ivar team_log.GovernancePolicyAddFolderFailedDetails.folder: Folder.
    :ivar team_log.GovernancePolicyAddFolderFailedDetails.reason: Reason.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_folder_value',
        '_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 folder=None,
                 policy_type=None,
                 reason=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._folder_value = bb.NOT_SET
        self._reason_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if folder is not None:
            self.folder = folder
        if reason is not None:
            self.reason = reason

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    folder = bb.Attribute("folder")

    # Instance attribute type: str (validator is set below)
    reason = bb.Attribute("reason", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyAddFolderFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyAddFolderFailedDetails_validator = bv.Struct(GovernancePolicyAddFolderFailedDetails)

class GovernancePolicyAddFolderFailedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyAddFolderFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyAddFolderFailedType_validator = bv.Struct(GovernancePolicyAddFolderFailedType)

class GovernancePolicyAddFoldersDetails(bb.Struct):
    """
    Added folders to policy.

    :ivar team_log.GovernancePolicyAddFoldersDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyAddFoldersDetails.name: Policy name.
    :ivar team_log.GovernancePolicyAddFoldersDetails.policy_type: Policy type.
    :ivar team_log.GovernancePolicyAddFoldersDetails.folders: Folders.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_folders_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 policy_type=None,
                 folders=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._folders_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if folders is not None:
            self.folders = folders

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    folders = bb.Attribute("folders", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyAddFoldersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyAddFoldersDetails_validator = bv.Struct(GovernancePolicyAddFoldersDetails)

class GovernancePolicyAddFoldersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyAddFoldersType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyAddFoldersType_validator = bv.Struct(GovernancePolicyAddFoldersType)

class GovernancePolicyContentDisposedDetails(bb.Struct):
    """
    Content disposed.

    :ivar team_log.GovernancePolicyContentDisposedDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyContentDisposedDetails.name: Policy name.
    :ivar team_log.GovernancePolicyContentDisposedDetails.policy_type: Policy
        type.
    :ivar team_log.GovernancePolicyContentDisposedDetails.disposition_type:
        Disposition type.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_disposition_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 disposition_type=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._disposition_type_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if disposition_type is not None:
            self.disposition_type = disposition_type

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: DispositionActionType (validator is set below)
    disposition_type = bb.Attribute("disposition_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyContentDisposedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyContentDisposedDetails_validator = bv.Struct(GovernancePolicyContentDisposedDetails)

class GovernancePolicyContentDisposedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyContentDisposedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyContentDisposedType_validator = bv.Struct(GovernancePolicyContentDisposedType)

class GovernancePolicyCreateDetails(bb.Struct):
    """
    Activated a new policy.

    :ivar team_log.GovernancePolicyCreateDetails.governance_policy_id: Policy
        ID.
    :ivar team_log.GovernancePolicyCreateDetails.name: Policy name.
    :ivar team_log.GovernancePolicyCreateDetails.policy_type: Policy type.
    :ivar team_log.GovernancePolicyCreateDetails.duration: Duration in days.
    :ivar team_log.GovernancePolicyCreateDetails.folders: Folders.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_duration_value',
        '_folders_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 duration=None,
                 policy_type=None,
                 folders=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._duration_value = bb.NOT_SET
        self._folders_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if duration is not None:
            self.duration = duration
        if folders is not None:
            self.folders = folders

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: DurationLogInfo (validator is set below)
    duration = bb.Attribute("duration", user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    folders = bb.Attribute("folders", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyCreateDetails_validator = bv.Struct(GovernancePolicyCreateDetails)

class GovernancePolicyCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyCreateType_validator = bv.Struct(GovernancePolicyCreateType)

class GovernancePolicyDeleteDetails(bb.Struct):
    """
    Deleted a policy.

    :ivar team_log.GovernancePolicyDeleteDetails.governance_policy_id: Policy
        ID.
    :ivar team_log.GovernancePolicyDeleteDetails.name: Policy name.
    :ivar team_log.GovernancePolicyDeleteDetails.policy_type: Policy type.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyDeleteDetails_validator = bv.Struct(GovernancePolicyDeleteDetails)

class GovernancePolicyDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyDeleteType_validator = bv.Struct(GovernancePolicyDeleteType)

class GovernancePolicyEditDetailsDetails(bb.Struct):
    """
    Edited policy.

    :ivar team_log.GovernancePolicyEditDetailsDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyEditDetailsDetails.name: Policy name.
    :ivar team_log.GovernancePolicyEditDetailsDetails.policy_type: Policy type.
    :ivar team_log.GovernancePolicyEditDetailsDetails.attribute: Attribute.
    :ivar team_log.GovernancePolicyEditDetailsDetails.previous_value: From.
    :ivar team_log.GovernancePolicyEditDetailsDetails.new_value: To.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_attribute_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 attribute=None,
                 previous_value=None,
                 new_value=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._attribute_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if attribute is not None:
            self.attribute = attribute
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    attribute = bb.Attribute("attribute")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyEditDetailsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyEditDetailsDetails_validator = bv.Struct(GovernancePolicyEditDetailsDetails)

class GovernancePolicyEditDetailsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyEditDetailsType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyEditDetailsType_validator = bv.Struct(GovernancePolicyEditDetailsType)

class GovernancePolicyEditDurationDetails(bb.Struct):
    """
    Changed policy duration.

    :ivar team_log.GovernancePolicyEditDurationDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyEditDurationDetails.name: Policy name.
    :ivar team_log.GovernancePolicyEditDurationDetails.policy_type: Policy type.
    :ivar team_log.GovernancePolicyEditDurationDetails.previous_value: From.
    :ivar team_log.GovernancePolicyEditDurationDetails.new_value: To.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 previous_value=None,
                 new_value=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: DurationLogInfo (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: DurationLogInfo (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyEditDurationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyEditDurationDetails_validator = bv.Struct(GovernancePolicyEditDurationDetails)

class GovernancePolicyEditDurationType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyEditDurationType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyEditDurationType_validator = bv.Struct(GovernancePolicyEditDurationType)

class GovernancePolicyExportCreatedDetails(bb.Struct):
    """
    Created a policy download.

    :ivar team_log.GovernancePolicyExportCreatedDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyExportCreatedDetails.name: Policy name.
    :ivar team_log.GovernancePolicyExportCreatedDetails.policy_type: Policy
        type.
    :ivar team_log.GovernancePolicyExportCreatedDetails.export_name: Export
        name.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_export_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 export_name=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if export_name is not None:
            self.export_name = export_name

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyExportCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyExportCreatedDetails_validator = bv.Struct(GovernancePolicyExportCreatedDetails)

class GovernancePolicyExportCreatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyExportCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyExportCreatedType_validator = bv.Struct(GovernancePolicyExportCreatedType)

class GovernancePolicyExportRemovedDetails(bb.Struct):
    """
    Removed a policy download.

    :ivar team_log.GovernancePolicyExportRemovedDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyExportRemovedDetails.name: Policy name.
    :ivar team_log.GovernancePolicyExportRemovedDetails.policy_type: Policy
        type.
    :ivar team_log.GovernancePolicyExportRemovedDetails.export_name: Export
        name.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_export_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 export_name=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if export_name is not None:
            self.export_name = export_name

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyExportRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyExportRemovedDetails_validator = bv.Struct(GovernancePolicyExportRemovedDetails)

class GovernancePolicyExportRemovedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyExportRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyExportRemovedType_validator = bv.Struct(GovernancePolicyExportRemovedType)

class GovernancePolicyRemoveFoldersDetails(bb.Struct):
    """
    Removed folders from policy.

    :ivar team_log.GovernancePolicyRemoveFoldersDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyRemoveFoldersDetails.name: Policy name.
    :ivar team_log.GovernancePolicyRemoveFoldersDetails.policy_type: Policy
        type.
    :ivar team_log.GovernancePolicyRemoveFoldersDetails.folders: Folders.
    :ivar team_log.GovernancePolicyRemoveFoldersDetails.reason: Reason.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_folders_value',
        '_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 policy_type=None,
                 folders=None,
                 reason=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._folders_value = bb.NOT_SET
        self._reason_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if folders is not None:
            self.folders = folders
        if reason is not None:
            self.reason = reason

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    folders = bb.Attribute("folders", nullable=True)

    # Instance attribute type: str (validator is set below)
    reason = bb.Attribute("reason", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyRemoveFoldersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyRemoveFoldersDetails_validator = bv.Struct(GovernancePolicyRemoveFoldersDetails)

class GovernancePolicyRemoveFoldersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyRemoveFoldersType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyRemoveFoldersType_validator = bv.Struct(GovernancePolicyRemoveFoldersType)

class GovernancePolicyReportCreatedDetails(bb.Struct):
    """
    Created a summary report for a policy.

    :ivar team_log.GovernancePolicyReportCreatedDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyReportCreatedDetails.name: Policy name.
    :ivar team_log.GovernancePolicyReportCreatedDetails.policy_type: Policy
        type.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 policy_type=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyReportCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyReportCreatedDetails_validator = bv.Struct(GovernancePolicyReportCreatedDetails)

class GovernancePolicyReportCreatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyReportCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyReportCreatedType_validator = bv.Struct(GovernancePolicyReportCreatedType)

class GovernancePolicyZipPartDownloadedDetails(bb.Struct):
    """
    Downloaded content from a policy.

    :ivar
        team_log.GovernancePolicyZipPartDownloadedDetails.governance_policy_id:
        Policy ID.
    :ivar team_log.GovernancePolicyZipPartDownloadedDetails.name: Policy name.
    :ivar team_log.GovernancePolicyZipPartDownloadedDetails.policy_type: Policy
        type.
    :ivar team_log.GovernancePolicyZipPartDownloadedDetails.export_name: Export
        name.
    :ivar team_log.GovernancePolicyZipPartDownloadedDetails.part: Part.
    """

    __slots__ = [
        '_governance_policy_id_value',
        '_name_value',
        '_policy_type_value',
        '_export_name_value',
        '_part_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 governance_policy_id=None,
                 name=None,
                 export_name=None,
                 policy_type=None,
                 part=None):
        self._governance_policy_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._policy_type_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        self._part_value = bb.NOT_SET
        if governance_policy_id is not None:
            self.governance_policy_id = governance_policy_id
        if name is not None:
            self.name = name
        if policy_type is not None:
            self.policy_type = policy_type
        if export_name is not None:
            self.export_name = export_name
        if part is not None:
            self.part = part

    # Instance attribute type: str (validator is set below)
    governance_policy_id = bb.Attribute("governance_policy_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: PolicyType (validator is set below)
    policy_type = bb.Attribute("policy_type", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name")

    # Instance attribute type: str (validator is set below)
    part = bb.Attribute("part", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyZipPartDownloadedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyZipPartDownloadedDetails_validator = bv.Struct(GovernancePolicyZipPartDownloadedDetails)

class GovernancePolicyZipPartDownloadedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GovernancePolicyZipPartDownloadedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GovernancePolicyZipPartDownloadedType_validator = bv.Struct(GovernancePolicyZipPartDownloadedType)

class GroupAddExternalIdDetails(bb.Struct):
    """
    Added external ID for group.

    :ivar team_log.GroupAddExternalIdDetails.new_value: Current external id.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupAddExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupAddExternalIdDetails_validator = bv.Struct(GroupAddExternalIdDetails)

class GroupAddExternalIdType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupAddExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupAddExternalIdType_validator = bv.Struct(GroupAddExternalIdType)

class GroupAddMemberDetails(bb.Struct):
    """
    Added team members to group.

    :ivar team_log.GroupAddMemberDetails.is_group_owner: Is group owner.
    """

    __slots__ = [
        '_is_group_owner_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 is_group_owner=None):
        self._is_group_owner_value = bb.NOT_SET
        if is_group_owner is not None:
            self.is_group_owner = is_group_owner

    # Instance attribute type: bool (validator is set below)
    is_group_owner = bb.Attribute("is_group_owner")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupAddMemberDetails_validator = bv.Struct(GroupAddMemberDetails)

class GroupAddMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupAddMemberType_validator = bv.Struct(GroupAddMemberType)

class GroupChangeExternalIdDetails(bb.Struct):
    """
    Changed external ID for group.

    :ivar team_log.GroupChangeExternalIdDetails.new_value: Current external id.
    :ivar team_log.GroupChangeExternalIdDetails.previous_value: Old external id.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupChangeExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupChangeExternalIdDetails_validator = bv.Struct(GroupChangeExternalIdDetails)

class GroupChangeExternalIdType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupChangeExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupChangeExternalIdType_validator = bv.Struct(GroupChangeExternalIdType)

class GroupChangeManagementTypeDetails(bb.Struct):
    """
    Changed group management type.

    :ivar team_log.GroupChangeManagementTypeDetails.new_value: New group
        management type.
    :ivar team_log.GroupChangeManagementTypeDetails.previous_value: Previous
        group management type. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_common.GroupManagementType (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_common.GroupManagementType (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupChangeManagementTypeDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupChangeManagementTypeDetails_validator = bv.Struct(GroupChangeManagementTypeDetails)

class GroupChangeManagementTypeType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupChangeManagementTypeType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupChangeManagementTypeType_validator = bv.Struct(GroupChangeManagementTypeType)

class GroupChangeMemberRoleDetails(bb.Struct):
    """
    Changed manager permissions of group member.

    :ivar team_log.GroupChangeMemberRoleDetails.is_group_owner: Is group owner.
    """

    __slots__ = [
        '_is_group_owner_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 is_group_owner=None):
        self._is_group_owner_value = bb.NOT_SET
        if is_group_owner is not None:
            self.is_group_owner = is_group_owner

    # Instance attribute type: bool (validator is set below)
    is_group_owner = bb.Attribute("is_group_owner")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupChangeMemberRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupChangeMemberRoleDetails_validator = bv.Struct(GroupChangeMemberRoleDetails)

class GroupChangeMemberRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupChangeMemberRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupChangeMemberRoleType_validator = bv.Struct(GroupChangeMemberRoleType)

class GroupCreateDetails(bb.Struct):
    """
    Created group.

    :ivar team_log.GroupCreateDetails.is_company_managed: Is company managed
        group.
    :ivar team_log.GroupCreateDetails.join_policy: Group join policy.
    """

    __slots__ = [
        '_is_company_managed_value',
        '_join_policy_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 is_company_managed=None,
                 join_policy=None):
        self._is_company_managed_value = bb.NOT_SET
        self._join_policy_value = bb.NOT_SET
        if is_company_managed is not None:
            self.is_company_managed = is_company_managed
        if join_policy is not None:
            self.join_policy = join_policy

    # Instance attribute type: bool (validator is set below)
    is_company_managed = bb.Attribute("is_company_managed", nullable=True)

    # Instance attribute type: GroupJoinPolicy (validator is set below)
    join_policy = bb.Attribute("join_policy", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupCreateDetails_validator = bv.Struct(GroupCreateDetails)

class GroupCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupCreateType_validator = bv.Struct(GroupCreateType)

class GroupDeleteDetails(bb.Struct):
    """
    Deleted group.

    :ivar team_log.GroupDeleteDetails.is_company_managed: Is company managed
        group.
    """

    __slots__ = [
        '_is_company_managed_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 is_company_managed=None):
        self._is_company_managed_value = bb.NOT_SET
        if is_company_managed is not None:
            self.is_company_managed = is_company_managed

    # Instance attribute type: bool (validator is set below)
    is_company_managed = bb.Attribute("is_company_managed", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupDeleteDetails_validator = bv.Struct(GroupDeleteDetails)

class GroupDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupDeleteType_validator = bv.Struct(GroupDeleteType)

class GroupDescriptionUpdatedDetails(bb.Struct):
    """
    Updated group.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupDescriptionUpdatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupDescriptionUpdatedDetails_validator = bv.Struct(GroupDescriptionUpdatedDetails)

class GroupDescriptionUpdatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupDescriptionUpdatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupDescriptionUpdatedType_validator = bv.Struct(GroupDescriptionUpdatedType)

class GroupJoinPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    open = None
    # Attribute is overwritten below the class definition
    request_to_join = None
    # Attribute is overwritten below the class definition
    other = None

    def is_open(self):
        """
        Check if the union tag is ``open``.

        :rtype: bool
        """
        return self._tag == 'open'

    def is_request_to_join(self):
        """
        Check if the union tag is ``request_to_join``.

        :rtype: bool
        """
        return self._tag == 'request_to_join'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupJoinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupJoinPolicy_validator = bv.Union(GroupJoinPolicy)

class GroupJoinPolicyUpdatedDetails(bb.Struct):
    """
    Updated group join policy.

    :ivar team_log.GroupJoinPolicyUpdatedDetails.is_company_managed: Is company
        managed group.
    :ivar team_log.GroupJoinPolicyUpdatedDetails.join_policy: Group join policy.
    """

    __slots__ = [
        '_is_company_managed_value',
        '_join_policy_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 is_company_managed=None,
                 join_policy=None):
        self._is_company_managed_value = bb.NOT_SET
        self._join_policy_value = bb.NOT_SET
        if is_company_managed is not None:
            self.is_company_managed = is_company_managed
        if join_policy is not None:
            self.join_policy = join_policy

    # Instance attribute type: bool (validator is set below)
    is_company_managed = bb.Attribute("is_company_managed", nullable=True)

    # Instance attribute type: GroupJoinPolicy (validator is set below)
    join_policy = bb.Attribute("join_policy", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupJoinPolicyUpdatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupJoinPolicyUpdatedDetails_validator = bv.Struct(GroupJoinPolicyUpdatedDetails)

class GroupJoinPolicyUpdatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupJoinPolicyUpdatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupJoinPolicyUpdatedType_validator = bv.Struct(GroupJoinPolicyUpdatedType)

class GroupLogInfo(bb.Struct):
    """
    Group's logged information.

    :ivar team_log.GroupLogInfo.group_id: The unique id of this group.
    :ivar team_log.GroupLogInfo.display_name: The name of this group.
    :ivar team_log.GroupLogInfo.external_id: External group ID.
    """

    __slots__ = [
        '_group_id_value',
        '_display_name_value',
        '_external_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 display_name=None,
                 group_id=None,
                 external_id=None):
        self._group_id_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        self._external_id_value = bb.NOT_SET
        if group_id is not None:
            self.group_id = group_id
        if display_name is not None:
            self.display_name = display_name
        if external_id is not None:
            self.external_id = external_id

    # Instance attribute type: str (validator is set below)
    group_id = bb.Attribute("group_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name")

    # Instance attribute type: str (validator is set below)
    external_id = bb.Attribute("external_id", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupLogInfo_validator = bv.Struct(GroupLogInfo)

class GroupMovedDetails(bb.Struct):
    """
    Moved group.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupMovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupMovedDetails_validator = bv.Struct(GroupMovedDetails)

class GroupMovedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupMovedType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupMovedType_validator = bv.Struct(GroupMovedType)

class GroupRemoveExternalIdDetails(bb.Struct):
    """
    Removed external ID for group.

    :ivar team_log.GroupRemoveExternalIdDetails.previous_value: Old external id.
    """

    __slots__ = [
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupRemoveExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupRemoveExternalIdDetails_validator = bv.Struct(GroupRemoveExternalIdDetails)

class GroupRemoveExternalIdType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupRemoveExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupRemoveExternalIdType_validator = bv.Struct(GroupRemoveExternalIdType)

class GroupRemoveMemberDetails(bb.Struct):
    """
    Removed team members from group.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupRemoveMemberDetails_validator = bv.Struct(GroupRemoveMemberDetails)

class GroupRemoveMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupRemoveMemberType_validator = bv.Struct(GroupRemoveMemberType)

class GroupRenameDetails(bb.Struct):
    """
    Renamed group.

    :ivar team_log.GroupRenameDetails.previous_value: Previous display name.
    :ivar team_log.GroupRenameDetails.new_value: New display name.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupRenameDetails_validator = bv.Struct(GroupRenameDetails)

class GroupRenameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupRenameType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupRenameType_validator = bv.Struct(GroupRenameType)

class GroupUserManagementChangePolicyDetails(bb.Struct):
    """
    Changed who can create groups.

    :ivar team_log.GroupUserManagementChangePolicyDetails.new_value: New group
        users management policy.
    :ivar team_log.GroupUserManagementChangePolicyDetails.previous_value:
        Previous group users management policy. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.GroupCreation (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.GroupCreation (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupUserManagementChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupUserManagementChangePolicyDetails_validator = bv.Struct(GroupUserManagementChangePolicyDetails)

class GroupUserManagementChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GroupUserManagementChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

GroupUserManagementChangePolicyType_validator = bv.Struct(GroupUserManagementChangePolicyType)

class GuestAdminChangeStatusDetails(bb.Struct):
    """
    Changed guest team admin status.

    :ivar team_log.GuestAdminChangeStatusDetails.is_guest: True for guest, false
        for host.
    :ivar team_log.GuestAdminChangeStatusDetails.guest_team_name: The name of
        the guest team.
    :ivar team_log.GuestAdminChangeStatusDetails.host_team_name: The name of the
        host team.
    :ivar team_log.GuestAdminChangeStatusDetails.previous_value: Previous
        request state.
    :ivar team_log.GuestAdminChangeStatusDetails.new_value: New request state.
    :ivar team_log.GuestAdminChangeStatusDetails.action_details: Action details.
    """

    __slots__ = [
        '_is_guest_value',
        '_guest_team_name_value',
        '_host_team_name_value',
        '_previous_value_value',
        '_new_value_value',
        '_action_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 is_guest=None,
                 previous_value=None,
                 new_value=None,
                 action_details=None,
                 guest_team_name=None,
                 host_team_name=None):
        self._is_guest_value = bb.NOT_SET
        self._guest_team_name_value = bb.NOT_SET
        self._host_team_name_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._action_details_value = bb.NOT_SET
        if is_guest is not None:
            self.is_guest = is_guest
        if guest_team_name is not None:
            self.guest_team_name = guest_team_name
        if host_team_name is not None:
            self.host_team_name = host_team_name
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value
        if action_details is not None:
            self.action_details = action_details

    # Instance attribute type: bool (validator is set below)
    is_guest = bb.Attribute("is_guest")

    # Instance attribute type: str (validator is set below)
    guest_team_name = bb.Attribute("guest_team_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    host_team_name = bb.Attribute("host_team_name", nullable=True)

    # Instance attribute type: TrustedTeamsRequestState (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: TrustedTeamsRequestState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: TrustedTeamsRequestAction (validator is set below)
    action_details = bb.Attribute("action_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GuestAdminChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GuestAdminChangeStatusDetails_validator = bv.Struct(GuestAdminChangeStatusDetails)

class GuestAdminChangeStatusType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GuestAdminChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor)

GuestAdminChangeStatusType_validator = bv.Struct(GuestAdminChangeStatusType)

class GuestAdminSignedInViaTrustedTeamsDetails(bb.Struct):
    """
    Started trusted team admin session.

    :ivar team_log.GuestAdminSignedInViaTrustedTeamsDetails.team_name: Host team
        name.
    :ivar team_log.GuestAdminSignedInViaTrustedTeamsDetails.trusted_team_name:
        Trusted team name.
    """

    __slots__ = [
        '_team_name_value',
        '_trusted_team_name_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 team_name=None,
                 trusted_team_name=None):
        self._team_name_value = bb.NOT_SET
        self._trusted_team_name_value = bb.NOT_SET
        if team_name is not None:
            self.team_name = team_name
        if trusted_team_name is not None:
            self.trusted_team_name = trusted_team_name

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    trusted_team_name = bb.Attribute("trusted_team_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GuestAdminSignedInViaTrustedTeamsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GuestAdminSignedInViaTrustedTeamsDetails_validator = bv.Struct(GuestAdminSignedInViaTrustedTeamsDetails)

class GuestAdminSignedInViaTrustedTeamsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GuestAdminSignedInViaTrustedTeamsType, self)._process_custom_annotations(annotation_type, field_path, processor)

GuestAdminSignedInViaTrustedTeamsType_validator = bv.Struct(GuestAdminSignedInViaTrustedTeamsType)

class GuestAdminSignedOutViaTrustedTeamsDetails(bb.Struct):
    """
    Ended trusted team admin session.

    :ivar team_log.GuestAdminSignedOutViaTrustedTeamsDetails.team_name: Host
        team name.
    :ivar team_log.GuestAdminSignedOutViaTrustedTeamsDetails.trusted_team_name:
        Trusted team name.
    """

    __slots__ = [
        '_team_name_value',
        '_trusted_team_name_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 team_name=None,
                 trusted_team_name=None):
        self._team_name_value = bb.NOT_SET
        self._trusted_team_name_value = bb.NOT_SET
        if team_name is not None:
            self.team_name = team_name
        if trusted_team_name is not None:
            self.trusted_team_name = trusted_team_name

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    trusted_team_name = bb.Attribute("trusted_team_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GuestAdminSignedOutViaTrustedTeamsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

GuestAdminSignedOutViaTrustedTeamsDetails_validator = bv.Struct(GuestAdminSignedOutViaTrustedTeamsDetails)

class GuestAdminSignedOutViaTrustedTeamsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(GuestAdminSignedOutViaTrustedTeamsType, self)._process_custom_annotations(annotation_type, field_path, processor)

GuestAdminSignedOutViaTrustedTeamsType_validator = bv.Struct(GuestAdminSignedOutViaTrustedTeamsType)

class IdentifierType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    email = None
    # Attribute is overwritten below the class definition
    facebook_profile_name = None
    # Attribute is overwritten below the class definition
    other = None

    def is_email(self):
        """
        Check if the union tag is ``email``.

        :rtype: bool
        """
        return self._tag == 'email'

    def is_facebook_profile_name(self):
        """
        Check if the union tag is ``facebook_profile_name``.

        :rtype: bool
        """
        return self._tag == 'facebook_profile_name'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IdentifierType, self)._process_custom_annotations(annotation_type, field_path, processor)

IdentifierType_validator = bv.Union(IdentifierType)

class IntegrationConnectedDetails(bb.Struct):
    """
    Connected integration for member.

    :ivar team_log.IntegrationConnectedDetails.integration_name: Name of the
        third-party integration.
    """

    __slots__ = [
        '_integration_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 integration_name=None):
        self._integration_name_value = bb.NOT_SET
        if integration_name is not None:
            self.integration_name = integration_name

    # Instance attribute type: str (validator is set below)
    integration_name = bb.Attribute("integration_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationConnectedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationConnectedDetails_validator = bv.Struct(IntegrationConnectedDetails)

class IntegrationConnectedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationConnectedType, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationConnectedType_validator = bv.Struct(IntegrationConnectedType)

class IntegrationDisconnectedDetails(bb.Struct):
    """
    Disconnected integration for member.

    :ivar team_log.IntegrationDisconnectedDetails.integration_name: Name of the
        third-party integration.
    """

    __slots__ = [
        '_integration_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 integration_name=None):
        self._integration_name_value = bb.NOT_SET
        if integration_name is not None:
            self.integration_name = integration_name

    # Instance attribute type: str (validator is set below)
    integration_name = bb.Attribute("integration_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationDisconnectedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationDisconnectedDetails_validator = bv.Struct(IntegrationDisconnectedDetails)

class IntegrationDisconnectedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationDisconnectedType, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationDisconnectedType_validator = bv.Struct(IntegrationDisconnectedType)

class IntegrationPolicy(bb.Union):
    """
    Policy for controlling whether a service integration is enabled for the
    team.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationPolicy_validator = bv.Union(IntegrationPolicy)

class IntegrationPolicyChangedDetails(bb.Struct):
    """
    Changed integration policy for team.

    :ivar team_log.IntegrationPolicyChangedDetails.integration_name: Name of the
        third-party integration.
    :ivar team_log.IntegrationPolicyChangedDetails.new_value: New integration
        policy.
    :ivar team_log.IntegrationPolicyChangedDetails.previous_value: Previous
        integration policy.
    """

    __slots__ = [
        '_integration_name_value',
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 integration_name=None,
                 new_value=None,
                 previous_value=None):
        self._integration_name_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if integration_name is not None:
            self.integration_name = integration_name
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    integration_name = bb.Attribute("integration_name")

    # Instance attribute type: IntegrationPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: IntegrationPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationPolicyChangedDetails_validator = bv.Struct(IntegrationPolicyChangedDetails)

class IntegrationPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(IntegrationPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

IntegrationPolicyChangedType_validator = bv.Struct(IntegrationPolicyChangedType)

class InviteAcceptanceEmailPolicy(bb.Union):
    """
    Policy for deciding whether team admins receive email when an invitation to
    join the team is accepted

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(InviteAcceptanceEmailPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

InviteAcceptanceEmailPolicy_validator = bv.Union(InviteAcceptanceEmailPolicy)

class InviteAcceptanceEmailPolicyChangedDetails(bb.Struct):
    """
    Changed invite accept email policy for team.

    :ivar team_log.InviteAcceptanceEmailPolicyChangedDetails.new_value: To.
    :ivar team_log.InviteAcceptanceEmailPolicyChangedDetails.previous_value:
        From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: InviteAcceptanceEmailPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: InviteAcceptanceEmailPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(InviteAcceptanceEmailPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

InviteAcceptanceEmailPolicyChangedDetails_validator = bv.Struct(InviteAcceptanceEmailPolicyChangedDetails)

class InviteAcceptanceEmailPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(InviteAcceptanceEmailPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

InviteAcceptanceEmailPolicyChangedType_validator = bv.Struct(InviteAcceptanceEmailPolicyChangedType)

class InviteMethod(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    auto_approve = None
    # Attribute is overwritten below the class definition
    invite_link = None
    # Attribute is overwritten below the class definition
    member_invite = None
    # Attribute is overwritten below the class definition
    moved_from_another_team = None
    # Attribute is overwritten below the class definition
    other = None

    def is_auto_approve(self):
        """
        Check if the union tag is ``auto_approve``.

        :rtype: bool
        """
        return self._tag == 'auto_approve'

    def is_invite_link(self):
        """
        Check if the union tag is ``invite_link``.

        :rtype: bool
        """
        return self._tag == 'invite_link'

    def is_member_invite(self):
        """
        Check if the union tag is ``member_invite``.

        :rtype: bool
        """
        return self._tag == 'member_invite'

    def is_moved_from_another_team(self):
        """
        Check if the union tag is ``moved_from_another_team``.

        :rtype: bool
        """
        return self._tag == 'moved_from_another_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(InviteMethod, self)._process_custom_annotations(annotation_type, field_path, processor)

InviteMethod_validator = bv.Union(InviteMethod)

class JoinTeamDetails(bb.Struct):
    """
    Additional information relevant when a new member joins the team.

    :ivar team_log.JoinTeamDetails.linked_apps: Linked applications.
        (Deprecated) Please use has_linked_apps boolean field instead.
    :ivar team_log.JoinTeamDetails.linked_devices: Linked devices. (Deprecated)
        Please use has_linked_devices boolean field instead.
    :ivar team_log.JoinTeamDetails.linked_shared_folders: Linked shared folders.
        (Deprecated) Please use has_linked_shared_folders boolean field instead.
    :ivar team_log.JoinTeamDetails.was_linked_apps_truncated: (Deprecated) True
        if the linked_apps list was truncated to the maximum supported length
        (50).
    :ivar team_log.JoinTeamDetails.was_linked_devices_truncated: (Deprecated)
        True if the linked_devices list was truncated to the maximum supported
        length (50).
    :ivar team_log.JoinTeamDetails.was_linked_shared_folders_truncated:
        (Deprecated) True if the linked_shared_folders list was truncated to the
        maximum supported length (50).
    :ivar team_log.JoinTeamDetails.has_linked_apps: True if the user had linked
        apps at event time.
    :ivar team_log.JoinTeamDetails.has_linked_devices: True if the user had
        linked apps at event time.
    :ivar team_log.JoinTeamDetails.has_linked_shared_folders: True if the user
        had linked shared folders at event time.
    """

    __slots__ = [
        '_linked_apps_value',
        '_linked_devices_value',
        '_linked_shared_folders_value',
        '_was_linked_apps_truncated_value',
        '_was_linked_devices_truncated_value',
        '_was_linked_shared_folders_truncated_value',
        '_has_linked_apps_value',
        '_has_linked_devices_value',
        '_has_linked_shared_folders_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 linked_apps=None,
                 linked_devices=None,
                 linked_shared_folders=None,
                 was_linked_apps_truncated=None,
                 was_linked_devices_truncated=None,
                 was_linked_shared_folders_truncated=None,
                 has_linked_apps=None,
                 has_linked_devices=None,
                 has_linked_shared_folders=None):
        self._linked_apps_value = bb.NOT_SET
        self._linked_devices_value = bb.NOT_SET
        self._linked_shared_folders_value = bb.NOT_SET
        self._was_linked_apps_truncated_value = bb.NOT_SET
        self._was_linked_devices_truncated_value = bb.NOT_SET
        self._was_linked_shared_folders_truncated_value = bb.NOT_SET
        self._has_linked_apps_value = bb.NOT_SET
        self._has_linked_devices_value = bb.NOT_SET
        self._has_linked_shared_folders_value = bb.NOT_SET
        if linked_apps is not None:
            self.linked_apps = linked_apps
        if linked_devices is not None:
            self.linked_devices = linked_devices
        if linked_shared_folders is not None:
            self.linked_shared_folders = linked_shared_folders
        if was_linked_apps_truncated is not None:
            self.was_linked_apps_truncated = was_linked_apps_truncated
        if was_linked_devices_truncated is not None:
            self.was_linked_devices_truncated = was_linked_devices_truncated
        if was_linked_shared_folders_truncated is not None:
            self.was_linked_shared_folders_truncated = was_linked_shared_folders_truncated
        if has_linked_apps is not None:
            self.has_linked_apps = has_linked_apps
        if has_linked_devices is not None:
            self.has_linked_devices = has_linked_devices
        if has_linked_shared_folders is not None:
            self.has_linked_shared_folders = has_linked_shared_folders

    # Instance attribute type: list of [UserLinkedAppLogInfo] (validator is set below)
    linked_apps = bb.Attribute("linked_apps")

    # Instance attribute type: list of [LinkedDeviceLogInfo] (validator is set below)
    linked_devices = bb.Attribute("linked_devices")

    # Instance attribute type: list of [FolderLogInfo] (validator is set below)
    linked_shared_folders = bb.Attribute("linked_shared_folders")

    # Instance attribute type: bool (validator is set below)
    was_linked_apps_truncated = bb.Attribute("was_linked_apps_truncated", nullable=True)

    # Instance attribute type: bool (validator is set below)
    was_linked_devices_truncated = bb.Attribute("was_linked_devices_truncated", nullable=True)

    # Instance attribute type: bool (validator is set below)
    was_linked_shared_folders_truncated = bb.Attribute("was_linked_shared_folders_truncated", nullable=True)

    # Instance attribute type: bool (validator is set below)
    has_linked_apps = bb.Attribute("has_linked_apps", nullable=True)

    # Instance attribute type: bool (validator is set below)
    has_linked_devices = bb.Attribute("has_linked_devices", nullable=True)

    # Instance attribute type: bool (validator is set below)
    has_linked_shared_folders = bb.Attribute("has_linked_shared_folders", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(JoinTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

JoinTeamDetails_validator = bv.Struct(JoinTeamDetails)

class LabelType(bb.Union):
    """
    Label type

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    personal_information = None
    # Attribute is overwritten below the class definition
    test_only = None
    # Attribute is overwritten below the class definition
    user_defined_tag = None
    # Attribute is overwritten below the class definition
    other = None

    def is_personal_information(self):
        """
        Check if the union tag is ``personal_information``.

        :rtype: bool
        """
        return self._tag == 'personal_information'

    def is_test_only(self):
        """
        Check if the union tag is ``test_only``.

        :rtype: bool
        """
        return self._tag == 'test_only'

    def is_user_defined_tag(self):
        """
        Check if the union tag is ``user_defined_tag``.

        :rtype: bool
        """
        return self._tag == 'user_defined_tag'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LabelType, self)._process_custom_annotations(annotation_type, field_path, processor)

LabelType_validator = bv.Union(LabelType)

class LegacyDeviceSessionLogInfo(DeviceSessionLogInfo):
    """
    Information on sessions, in legacy format

    :ivar team_log.LegacyDeviceSessionLogInfo.session_info: Session unique id.
    :ivar team_log.LegacyDeviceSessionLogInfo.display_name: The device name.
        Might be missing due to historical data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.is_emm_managed: Is device managed
        by emm. Might be missing due to historical data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.platform: Information on the
        hosting platform. Might be missing due to historical data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.mac_address: The mac address of
        the last activity from this session. Might be missing due to historical
        data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.os_version: The hosting OS
        version. Might be missing due to historical data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.device_type: Information on the
        hosting device type. Might be missing due to historical data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.client_version: The Dropbox client
        version. Might be missing due to historical data gap.
    :ivar team_log.LegacyDeviceSessionLogInfo.legacy_uniq_id: Alternative unique
        device session id, instead of session id field. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_session_info_value',
        '_display_name_value',
        '_is_emm_managed_value',
        '_platform_value',
        '_mac_address_value',
        '_os_version_value',
        '_device_type_value',
        '_client_version_value',
        '_legacy_uniq_id_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 ip_address=None,
                 created=None,
                 updated=None,
                 session_info=None,
                 display_name=None,
                 is_emm_managed=None,
                 platform=None,
                 mac_address=None,
                 os_version=None,
                 device_type=None,
                 client_version=None,
                 legacy_uniq_id=None):
        super(LegacyDeviceSessionLogInfo, self).__init__(ip_address,
                                                         created,
                                                         updated)
        self._session_info_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        self._is_emm_managed_value = bb.NOT_SET
        self._platform_value = bb.NOT_SET
        self._mac_address_value = bb.NOT_SET
        self._os_version_value = bb.NOT_SET
        self._device_type_value = bb.NOT_SET
        self._client_version_value = bb.NOT_SET
        self._legacy_uniq_id_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if display_name is not None:
            self.display_name = display_name
        if is_emm_managed is not None:
            self.is_emm_managed = is_emm_managed
        if platform is not None:
            self.platform = platform
        if mac_address is not None:
            self.mac_address = mac_address
        if os_version is not None:
            self.os_version = os_version
        if device_type is not None:
            self.device_type = device_type
        if client_version is not None:
            self.client_version = client_version
        if legacy_uniq_id is not None:
            self.legacy_uniq_id = legacy_uniq_id

    # Instance attribute type: SessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    # Instance attribute type: bool (validator is set below)
    is_emm_managed = bb.Attribute("is_emm_managed", nullable=True)

    # Instance attribute type: str (validator is set below)
    platform = bb.Attribute("platform", nullable=True)

    # Instance attribute type: str (validator is set below)
    mac_address = bb.Attribute("mac_address", nullable=True)

    # Instance attribute type: str (validator is set below)
    os_version = bb.Attribute("os_version", nullable=True)

    # Instance attribute type: str (validator is set below)
    device_type = bb.Attribute("device_type", nullable=True)

    # Instance attribute type: str (validator is set below)
    client_version = bb.Attribute("client_version", nullable=True)

    # Instance attribute type: str (validator is set below)
    legacy_uniq_id = bb.Attribute("legacy_uniq_id", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegacyDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

LegacyDeviceSessionLogInfo_validator = bv.Struct(LegacyDeviceSessionLogInfo)

class LegalHoldsActivateAHoldDetails(bb.Struct):
    """
    Activated a hold.

    :ivar team_log.LegalHoldsActivateAHoldDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsActivateAHoldDetails.name: Hold name.
    :ivar team_log.LegalHoldsActivateAHoldDetails.start_date: Hold start date.
    :ivar team_log.LegalHoldsActivateAHoldDetails.end_date: Hold end date.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
        '_start_date_value',
        '_end_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None,
                 start_date=None,
                 end_date=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._start_date_value = bb.NOT_SET
        self._end_date_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name
        if start_date is not None:
            self.start_date = start_date
        if end_date is not None:
            self.end_date = end_date

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: datetime.datetime (validator is set below)
    start_date = bb.Attribute("start_date")

    # Instance attribute type: datetime.datetime (validator is set below)
    end_date = bb.Attribute("end_date", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsActivateAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsActivateAHoldDetails_validator = bv.Struct(LegalHoldsActivateAHoldDetails)

class LegalHoldsActivateAHoldType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsActivateAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsActivateAHoldType_validator = bv.Struct(LegalHoldsActivateAHoldType)

class LegalHoldsAddMembersDetails(bb.Struct):
    """
    Added members to a hold.

    :ivar team_log.LegalHoldsAddMembersDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsAddMembersDetails.name: Hold name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsAddMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsAddMembersDetails_validator = bv.Struct(LegalHoldsAddMembersDetails)

class LegalHoldsAddMembersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsAddMembersType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsAddMembersType_validator = bv.Struct(LegalHoldsAddMembersType)

class LegalHoldsChangeHoldDetailsDetails(bb.Struct):
    """
    Edited details for a hold.

    :ivar team_log.LegalHoldsChangeHoldDetailsDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsChangeHoldDetailsDetails.name: Hold name.
    :ivar team_log.LegalHoldsChangeHoldDetailsDetails.previous_value: Previous
        details.
    :ivar team_log.LegalHoldsChangeHoldDetailsDetails.new_value: New details.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None,
                 previous_value=None,
                 new_value=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsChangeHoldDetailsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsChangeHoldDetailsDetails_validator = bv.Struct(LegalHoldsChangeHoldDetailsDetails)

class LegalHoldsChangeHoldDetailsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsChangeHoldDetailsType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsChangeHoldDetailsType_validator = bv.Struct(LegalHoldsChangeHoldDetailsType)

class LegalHoldsChangeHoldNameDetails(bb.Struct):
    """
    Renamed a hold.

    :ivar team_log.LegalHoldsChangeHoldNameDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsChangeHoldNameDetails.previous_value: Previous
        Name.
    :ivar team_log.LegalHoldsChangeHoldNameDetails.new_value: New Name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 previous_value=None,
                 new_value=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsChangeHoldNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsChangeHoldNameDetails_validator = bv.Struct(LegalHoldsChangeHoldNameDetails)

class LegalHoldsChangeHoldNameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsChangeHoldNameType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsChangeHoldNameType_validator = bv.Struct(LegalHoldsChangeHoldNameType)

class LegalHoldsExportAHoldDetails(bb.Struct):
    """
    Exported hold.

    :ivar team_log.LegalHoldsExportAHoldDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsExportAHoldDetails.name: Hold name.
    :ivar team_log.LegalHoldsExportAHoldDetails.export_name: Export name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
        '_export_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None,
                 export_name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name
        if export_name is not None:
            self.export_name = export_name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportAHoldDetails_validator = bv.Struct(LegalHoldsExportAHoldDetails)

class LegalHoldsExportAHoldType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportAHoldType_validator = bv.Struct(LegalHoldsExportAHoldType)

class LegalHoldsExportCancelledDetails(bb.Struct):
    """
    Canceled export for a hold.

    :ivar team_log.LegalHoldsExportCancelledDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsExportCancelledDetails.name: Hold name.
    :ivar team_log.LegalHoldsExportCancelledDetails.export_name: Export name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
        '_export_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None,
                 export_name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name
        if export_name is not None:
            self.export_name = export_name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportCancelledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportCancelledDetails_validator = bv.Struct(LegalHoldsExportCancelledDetails)

class LegalHoldsExportCancelledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportCancelledType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportCancelledType_validator = bv.Struct(LegalHoldsExportCancelledType)

class LegalHoldsExportDownloadedDetails(bb.Struct):
    """
    Downloaded export for a hold.

    :ivar team_log.LegalHoldsExportDownloadedDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsExportDownloadedDetails.name: Hold name.
    :ivar team_log.LegalHoldsExportDownloadedDetails.export_name: Export name.
    :ivar team_log.LegalHoldsExportDownloadedDetails.part: Part.
    :ivar team_log.LegalHoldsExportDownloadedDetails.file_name: Filename.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
        '_export_name_value',
        '_part_value',
        '_file_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None,
                 export_name=None,
                 part=None,
                 file_name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        self._part_value = bb.NOT_SET
        self._file_name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name
        if export_name is not None:
            self.export_name = export_name
        if part is not None:
            self.part = part
        if file_name is not None:
            self.file_name = file_name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name")

    # Instance attribute type: str (validator is set below)
    part = bb.Attribute("part", nullable=True)

    # Instance attribute type: str (validator is set below)
    file_name = bb.Attribute("file_name", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportDownloadedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportDownloadedDetails_validator = bv.Struct(LegalHoldsExportDownloadedDetails)

class LegalHoldsExportDownloadedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportDownloadedType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportDownloadedType_validator = bv.Struct(LegalHoldsExportDownloadedType)

class LegalHoldsExportRemovedDetails(bb.Struct):
    """
    Removed export for a hold.

    :ivar team_log.LegalHoldsExportRemovedDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsExportRemovedDetails.name: Hold name.
    :ivar team_log.LegalHoldsExportRemovedDetails.export_name: Export name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
        '_export_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None,
                 export_name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        self._export_name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name
        if export_name is not None:
            self.export_name = export_name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    # Instance attribute type: str (validator is set below)
    export_name = bb.Attribute("export_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportRemovedDetails_validator = bv.Struct(LegalHoldsExportRemovedDetails)

class LegalHoldsExportRemovedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsExportRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsExportRemovedType_validator = bv.Struct(LegalHoldsExportRemovedType)

class LegalHoldsReleaseAHoldDetails(bb.Struct):
    """
    Released a hold.

    :ivar team_log.LegalHoldsReleaseAHoldDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsReleaseAHoldDetails.name: Hold name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsReleaseAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsReleaseAHoldDetails_validator = bv.Struct(LegalHoldsReleaseAHoldDetails)

class LegalHoldsReleaseAHoldType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsReleaseAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsReleaseAHoldType_validator = bv.Struct(LegalHoldsReleaseAHoldType)

class LegalHoldsRemoveMembersDetails(bb.Struct):
    """
    Removed members from a hold.

    :ivar team_log.LegalHoldsRemoveMembersDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsRemoveMembersDetails.name: Hold name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsRemoveMembersDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsRemoveMembersDetails_validator = bv.Struct(LegalHoldsRemoveMembersDetails)

class LegalHoldsRemoveMembersType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsRemoveMembersType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsRemoveMembersType_validator = bv.Struct(LegalHoldsRemoveMembersType)

class LegalHoldsReportAHoldDetails(bb.Struct):
    """
    Created a summary report for a hold.

    :ivar team_log.LegalHoldsReportAHoldDetails.legal_hold_id: Hold ID.
    :ivar team_log.LegalHoldsReportAHoldDetails.name: Hold name.
    """

    __slots__ = [
        '_legal_hold_id_value',
        '_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 legal_hold_id=None,
                 name=None):
        self._legal_hold_id_value = bb.NOT_SET
        self._name_value = bb.NOT_SET
        if legal_hold_id is not None:
            self.legal_hold_id = legal_hold_id
        if name is not None:
            self.name = name

    # Instance attribute type: str (validator is set below)
    legal_hold_id = bb.Attribute("legal_hold_id")

    # Instance attribute type: str (validator is set below)
    name = bb.Attribute("name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsReportAHoldDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsReportAHoldDetails_validator = bv.Struct(LegalHoldsReportAHoldDetails)

class LegalHoldsReportAHoldType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LegalHoldsReportAHoldType, self)._process_custom_annotations(annotation_type, field_path, processor)

LegalHoldsReportAHoldType_validator = bv.Struct(LegalHoldsReportAHoldType)

class LinkedDeviceLogInfo(bb.Union):
    """
    The device sessions that user is linked to.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar DesktopDeviceSessionLogInfo
        LinkedDeviceLogInfo.desktop_device_session: desktop device session's
        details.
    :ivar LegacyDeviceSessionLogInfo LinkedDeviceLogInfo.legacy_device_session:
        legacy device session's details.
    :ivar MobileDeviceSessionLogInfo LinkedDeviceLogInfo.mobile_device_session:
        mobile device session's details.
    :ivar WebDeviceSessionLogInfo LinkedDeviceLogInfo.web_device_session: web
        device session's details.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def desktop_device_session(cls, val):
        """
        Create an instance of this class set to the ``desktop_device_session``
        tag with value ``val``.

        :param DesktopDeviceSessionLogInfo val:
        :rtype: LinkedDeviceLogInfo
        """
        return cls('desktop_device_session', val)

    @classmethod
    def legacy_device_session(cls, val):
        """
        Create an instance of this class set to the ``legacy_device_session``
        tag with value ``val``.

        :param LegacyDeviceSessionLogInfo val:
        :rtype: LinkedDeviceLogInfo
        """
        return cls('legacy_device_session', val)

    @classmethod
    def mobile_device_session(cls, val):
        """
        Create an instance of this class set to the ``mobile_device_session``
        tag with value ``val``.

        :param MobileDeviceSessionLogInfo val:
        :rtype: LinkedDeviceLogInfo
        """
        return cls('mobile_device_session', val)

    @classmethod
    def web_device_session(cls, val):
        """
        Create an instance of this class set to the ``web_device_session`` tag
        with value ``val``.

        :param WebDeviceSessionLogInfo val:
        :rtype: LinkedDeviceLogInfo
        """
        return cls('web_device_session', val)

    def is_desktop_device_session(self):
        """
        Check if the union tag is ``desktop_device_session``.

        :rtype: bool
        """
        return self._tag == 'desktop_device_session'

    def is_legacy_device_session(self):
        """
        Check if the union tag is ``legacy_device_session``.

        :rtype: bool
        """
        return self._tag == 'legacy_device_session'

    def is_mobile_device_session(self):
        """
        Check if the union tag is ``mobile_device_session``.

        :rtype: bool
        """
        return self._tag == 'mobile_device_session'

    def is_web_device_session(self):
        """
        Check if the union tag is ``web_device_session``.

        :rtype: bool
        """
        return self._tag == 'web_device_session'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_desktop_device_session(self):
        """
        desktop device session's details.

        Only call this if :meth:`is_desktop_device_session` is true.

        :rtype: DesktopDeviceSessionLogInfo
        """
        if not self.is_desktop_device_session():
            raise AttributeError("tag 'desktop_device_session' not set")
        return self._value

    def get_legacy_device_session(self):
        """
        legacy device session's details.

        Only call this if :meth:`is_legacy_device_session` is true.

        :rtype: LegacyDeviceSessionLogInfo
        """
        if not self.is_legacy_device_session():
            raise AttributeError("tag 'legacy_device_session' not set")
        return self._value

    def get_mobile_device_session(self):
        """
        mobile device session's details.

        Only call this if :meth:`is_mobile_device_session` is true.

        :rtype: MobileDeviceSessionLogInfo
        """
        if not self.is_mobile_device_session():
            raise AttributeError("tag 'mobile_device_session' not set")
        return self._value

    def get_web_device_session(self):
        """
        web device session's details.

        Only call this if :meth:`is_web_device_session` is true.

        :rtype: WebDeviceSessionLogInfo
        """
        if not self.is_web_device_session():
            raise AttributeError("tag 'web_device_session' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LinkedDeviceLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

LinkedDeviceLogInfo_validator = bv.Union(LinkedDeviceLogInfo)

class LockStatus(bb.Union):
    """
    File lock status

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    locked = None
    # Attribute is overwritten below the class definition
    unlocked = None
    # Attribute is overwritten below the class definition
    other = None

    def is_locked(self):
        """
        Check if the union tag is ``locked``.

        :rtype: bool
        """
        return self._tag == 'locked'

    def is_unlocked(self):
        """
        Check if the union tag is ``unlocked``.

        :rtype: bool
        """
        return self._tag == 'unlocked'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LockStatus, self)._process_custom_annotations(annotation_type, field_path, processor)

LockStatus_validator = bv.Union(LockStatus)

class LoginFailDetails(bb.Struct):
    """
    Failed to sign in.

    :ivar team_log.LoginFailDetails.is_emm_managed: Tells if the login device is
        EMM managed. Might be missing due to historical data gap.
    :ivar team_log.LoginFailDetails.login_method: Login method.
    :ivar team_log.LoginFailDetails.error_details: Error details.
    """

    __slots__ = [
        '_is_emm_managed_value',
        '_login_method_value',
        '_error_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 login_method=None,
                 error_details=None,
                 is_emm_managed=None):
        self._is_emm_managed_value = bb.NOT_SET
        self._login_method_value = bb.NOT_SET
        self._error_details_value = bb.NOT_SET
        if is_emm_managed is not None:
            self.is_emm_managed = is_emm_managed
        if login_method is not None:
            self.login_method = login_method
        if error_details is not None:
            self.error_details = error_details

    # Instance attribute type: bool (validator is set below)
    is_emm_managed = bb.Attribute("is_emm_managed", nullable=True)

    # Instance attribute type: LoginMethod (validator is set below)
    login_method = bb.Attribute("login_method", user_defined=True)

    # Instance attribute type: FailureDetailsLogInfo (validator is set below)
    error_details = bb.Attribute("error_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LoginFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LoginFailDetails_validator = bv.Struct(LoginFailDetails)

class LoginFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LoginFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

LoginFailType_validator = bv.Struct(LoginFailType)

class LoginMethod(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    apple_oauth = None
    # Attribute is overwritten below the class definition
    first_party_token_exchange = None
    # Attribute is overwritten below the class definition
    google_oauth = None
    # Attribute is overwritten below the class definition
    password = None
    # Attribute is overwritten below the class definition
    qr_code = None
    # Attribute is overwritten below the class definition
    saml = None
    # Attribute is overwritten below the class definition
    two_factor_authentication = None
    # Attribute is overwritten below the class definition
    web_session = None
    # Attribute is overwritten below the class definition
    other = None

    def is_apple_oauth(self):
        """
        Check if the union tag is ``apple_oauth``.

        :rtype: bool
        """
        return self._tag == 'apple_oauth'

    def is_first_party_token_exchange(self):
        """
        Check if the union tag is ``first_party_token_exchange``.

        :rtype: bool
        """
        return self._tag == 'first_party_token_exchange'

    def is_google_oauth(self):
        """
        Check if the union tag is ``google_oauth``.

        :rtype: bool
        """
        return self._tag == 'google_oauth'

    def is_password(self):
        """
        Check if the union tag is ``password``.

        :rtype: bool
        """
        return self._tag == 'password'

    def is_qr_code(self):
        """
        Check if the union tag is ``qr_code``.

        :rtype: bool
        """
        return self._tag == 'qr_code'

    def is_saml(self):
        """
        Check if the union tag is ``saml``.

        :rtype: bool
        """
        return self._tag == 'saml'

    def is_two_factor_authentication(self):
        """
        Check if the union tag is ``two_factor_authentication``.

        :rtype: bool
        """
        return self._tag == 'two_factor_authentication'

    def is_web_session(self):
        """
        Check if the union tag is ``web_session``.

        :rtype: bool
        """
        return self._tag == 'web_session'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LoginMethod, self)._process_custom_annotations(annotation_type, field_path, processor)

LoginMethod_validator = bv.Union(LoginMethod)

class LoginSuccessDetails(bb.Struct):
    """
    Signed in.

    :ivar team_log.LoginSuccessDetails.is_emm_managed: Tells if the login device
        is EMM managed. Might be missing due to historical data gap.
    :ivar team_log.LoginSuccessDetails.login_method: Login method.
    """

    __slots__ = [
        '_is_emm_managed_value',
        '_login_method_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 login_method=None,
                 is_emm_managed=None):
        self._is_emm_managed_value = bb.NOT_SET
        self._login_method_value = bb.NOT_SET
        if is_emm_managed is not None:
            self.is_emm_managed = is_emm_managed
        if login_method is not None:
            self.login_method = login_method

    # Instance attribute type: bool (validator is set below)
    is_emm_managed = bb.Attribute("is_emm_managed", nullable=True)

    # Instance attribute type: LoginMethod (validator is set below)
    login_method = bb.Attribute("login_method", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LoginSuccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LoginSuccessDetails_validator = bv.Struct(LoginSuccessDetails)

class LoginSuccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LoginSuccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

LoginSuccessType_validator = bv.Struct(LoginSuccessType)

class LogoutDetails(bb.Struct):
    """
    Signed out.

    :ivar team_log.LogoutDetails.login_id: Login session id.
    """

    __slots__ = [
        '_login_id_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 login_id=None):
        self._login_id_value = bb.NOT_SET
        if login_id is not None:
            self.login_id = login_id

    # Instance attribute type: str (validator is set below)
    login_id = bb.Attribute("login_id", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LogoutDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

LogoutDetails_validator = bv.Struct(LogoutDetails)

class LogoutType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(LogoutType, self)._process_custom_annotations(annotation_type, field_path, processor)

LogoutType_validator = bv.Struct(LogoutType)

class MemberAddExternalIdDetails(bb.Struct):
    """
    Added an external ID for team member.

    :ivar team_log.MemberAddExternalIdDetails.new_value: Current external id.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberAddExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberAddExternalIdDetails_validator = bv.Struct(MemberAddExternalIdDetails)

class MemberAddExternalIdType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberAddExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberAddExternalIdType_validator = bv.Struct(MemberAddExternalIdType)

class MemberAddNameDetails(bb.Struct):
    """
    Added team member name.

    :ivar team_log.MemberAddNameDetails.new_value: New user's name.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: UserNameLogInfo (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberAddNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberAddNameDetails_validator = bv.Struct(MemberAddNameDetails)

class MemberAddNameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberAddNameType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberAddNameType_validator = bv.Struct(MemberAddNameType)

class MemberChangeAdminRoleDetails(bb.Struct):
    """
    Changed team member admin role.

    :ivar team_log.MemberChangeAdminRoleDetails.new_value: New admin role. This
        field is relevant when the admin role is changed or whenthe user role
        changes from no admin rights to with admin rights.
    :ivar team_log.MemberChangeAdminRoleDetails.previous_value: Previous admin
        role. This field is relevant when the admin role is changed or when the
        admin role is removed.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: AdminRole (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: AdminRole (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeAdminRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeAdminRoleDetails_validator = bv.Struct(MemberChangeAdminRoleDetails)

class MemberChangeAdminRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeAdminRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeAdminRoleType_validator = bv.Struct(MemberChangeAdminRoleType)

class MemberChangeEmailDetails(bb.Struct):
    """
    Changed team member email.

    :ivar team_log.MemberChangeEmailDetails.new_value: New email.
    :ivar team_log.MemberChangeEmailDetails.previous_value: Previous email.
        Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeEmailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeEmailDetails_validator = bv.Struct(MemberChangeEmailDetails)

class MemberChangeEmailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeEmailType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeEmailType_validator = bv.Struct(MemberChangeEmailType)

class MemberChangeExternalIdDetails(bb.Struct):
    """
    Changed the external ID for team member.

    :ivar team_log.MemberChangeExternalIdDetails.new_value: Current external id.
    :ivar team_log.MemberChangeExternalIdDetails.previous_value: Old external
        id.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeExternalIdDetails_validator = bv.Struct(MemberChangeExternalIdDetails)

class MemberChangeExternalIdType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeExternalIdType_validator = bv.Struct(MemberChangeExternalIdType)

class MemberChangeMembershipTypeDetails(bb.Struct):
    """
    Changed membership type (limited/full) of member.

    :ivar team_log.MemberChangeMembershipTypeDetails.prev_value: Previous
        membership type.
    :ivar team_log.MemberChangeMembershipTypeDetails.new_value: New membership
        type.
    """

    __slots__ = [
        '_prev_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 prev_value=None,
                 new_value=None):
        self._prev_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if prev_value is not None:
            self.prev_value = prev_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: TeamMembershipType (validator is set below)
    prev_value = bb.Attribute("prev_value", user_defined=True)

    # Instance attribute type: TeamMembershipType (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeMembershipTypeDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeMembershipTypeDetails_validator = bv.Struct(MemberChangeMembershipTypeDetails)

class MemberChangeMembershipTypeType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeMembershipTypeType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeMembershipTypeType_validator = bv.Struct(MemberChangeMembershipTypeType)

class MemberChangeNameDetails(bb.Struct):
    """
    Changed team member name.

    :ivar team_log.MemberChangeNameDetails.new_value: New user's name.
    :ivar team_log.MemberChangeNameDetails.previous_value: Previous user's name.
        Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: UserNameLogInfo (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: UserNameLogInfo (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeNameDetails_validator = bv.Struct(MemberChangeNameDetails)

class MemberChangeNameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeNameType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeNameType_validator = bv.Struct(MemberChangeNameType)

class MemberChangeResellerRoleDetails(bb.Struct):
    """
    Changed team member reseller role.

    :ivar team_log.MemberChangeResellerRoleDetails.new_value: New reseller role.
        This field is relevant when the reseller role is changed.
    :ivar team_log.MemberChangeResellerRoleDetails.previous_value: Previous
        reseller role. This field is relevant when the reseller role is changed
        or when the reseller role is removed.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ResellerRole (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ResellerRole (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeResellerRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeResellerRoleDetails_validator = bv.Struct(MemberChangeResellerRoleDetails)

class MemberChangeResellerRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeResellerRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeResellerRoleType_validator = bv.Struct(MemberChangeResellerRoleType)

class MemberChangeStatusDetails(bb.Struct):
    """
    Changed member status (invited, joined, suspended, etc.).

    :ivar team_log.MemberChangeStatusDetails.previous_value: Previous member
        status. Might be missing due to historical data gap.
    :ivar team_log.MemberChangeStatusDetails.new_value: New member status.
    :ivar team_log.MemberChangeStatusDetails.action: Additional information
        indicating the action taken that caused status change.
    :ivar team_log.MemberChangeStatusDetails.new_team: The user's new team name.
        This field is relevant when the user is transferred off the team.
    :ivar team_log.MemberChangeStatusDetails.previous_team: The user's previous
        team name. This field is relevant when the user is transferred onto the
        team.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
        '_action_value',
        '_new_team_value',
        '_previous_team_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None,
                 action=None,
                 new_team=None,
                 previous_team=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._action_value = bb.NOT_SET
        self._new_team_value = bb.NOT_SET
        self._previous_team_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value
        if action is not None:
            self.action = action
        if new_team is not None:
            self.new_team = new_team
        if previous_team is not None:
            self.previous_team = previous_team

    # Instance attribute type: MemberStatus (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    # Instance attribute type: MemberStatus (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ActionDetails (validator is set below)
    action = bb.Attribute("action", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    new_team = bb.Attribute("new_team", nullable=True)

    # Instance attribute type: str (validator is set below)
    previous_team = bb.Attribute("previous_team", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeStatusDetails_validator = bv.Struct(MemberChangeStatusDetails)

class MemberChangeStatusType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberChangeStatusType_validator = bv.Struct(MemberChangeStatusType)

class MemberDeleteManualContactsDetails(bb.Struct):
    """
    Cleared manually added contacts.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberDeleteManualContactsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberDeleteManualContactsDetails_validator = bv.Struct(MemberDeleteManualContactsDetails)

class MemberDeleteManualContactsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberDeleteManualContactsType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberDeleteManualContactsType_validator = bv.Struct(MemberDeleteManualContactsType)

class MemberDeleteProfilePhotoDetails(bb.Struct):
    """
    Deleted team member profile photo.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberDeleteProfilePhotoDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberDeleteProfilePhotoDetails_validator = bv.Struct(MemberDeleteProfilePhotoDetails)

class MemberDeleteProfilePhotoType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberDeleteProfilePhotoType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberDeleteProfilePhotoType_validator = bv.Struct(MemberDeleteProfilePhotoType)

class MemberPermanentlyDeleteAccountContentsDetails(bb.Struct):
    """
    Permanently deleted contents of deleted team member account.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberPermanentlyDeleteAccountContentsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberPermanentlyDeleteAccountContentsDetails_validator = bv.Struct(MemberPermanentlyDeleteAccountContentsDetails)

class MemberPermanentlyDeleteAccountContentsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberPermanentlyDeleteAccountContentsType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberPermanentlyDeleteAccountContentsType_validator = bv.Struct(MemberPermanentlyDeleteAccountContentsType)

class MemberRemoveActionType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    delete = None
    # Attribute is overwritten below the class definition
    leave = None
    # Attribute is overwritten below the class definition
    offboard = None
    # Attribute is overwritten below the class definition
    offboard_and_retain_team_folders = None
    # Attribute is overwritten below the class definition
    other = None

    def is_delete(self):
        """
        Check if the union tag is ``delete``.

        :rtype: bool
        """
        return self._tag == 'delete'

    def is_leave(self):
        """
        Check if the union tag is ``leave``.

        :rtype: bool
        """
        return self._tag == 'leave'

    def is_offboard(self):
        """
        Check if the union tag is ``offboard``.

        :rtype: bool
        """
        return self._tag == 'offboard'

    def is_offboard_and_retain_team_folders(self):
        """
        Check if the union tag is ``offboard_and_retain_team_folders``.

        :rtype: bool
        """
        return self._tag == 'offboard_and_retain_team_folders'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberRemoveActionType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberRemoveActionType_validator = bv.Union(MemberRemoveActionType)

class MemberRemoveExternalIdDetails(bb.Struct):
    """
    Removed the external ID for team member.

    :ivar team_log.MemberRemoveExternalIdDetails.previous_value: Old external
        id.
    """

    __slots__ = [
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberRemoveExternalIdDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberRemoveExternalIdDetails_validator = bv.Struct(MemberRemoveExternalIdDetails)

class MemberRemoveExternalIdType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberRemoveExternalIdType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberRemoveExternalIdType_validator = bv.Struct(MemberRemoveExternalIdType)

class MemberRequestsChangePolicyDetails(bb.Struct):
    """
    Changed whether users can find team when not invited.

    :ivar team_log.MemberRequestsChangePolicyDetails.new_value: New member
        change requests policy.
    :ivar team_log.MemberRequestsChangePolicyDetails.previous_value: Previous
        member change requests policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: MemberRequestsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: MemberRequestsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberRequestsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberRequestsChangePolicyDetails_validator = bv.Struct(MemberRequestsChangePolicyDetails)

class MemberRequestsChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberRequestsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberRequestsChangePolicyType_validator = bv.Struct(MemberRequestsChangePolicyType)

class MemberRequestsPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    auto_accept = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    require_approval = None
    # Attribute is overwritten below the class definition
    other = None

    def is_auto_accept(self):
        """
        Check if the union tag is ``auto_accept``.

        :rtype: bool
        """
        return self._tag == 'auto_accept'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_require_approval(self):
        """
        Check if the union tag is ``require_approval``.

        :rtype: bool
        """
        return self._tag == 'require_approval'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberRequestsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberRequestsPolicy_validator = bv.Union(MemberRequestsPolicy)

class MemberSendInvitePolicy(bb.Union):
    """
    Policy for controlling whether team members can send team invites

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    everyone = None
    # Attribute is overwritten below the class definition
    specific_members = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_everyone(self):
        """
        Check if the union tag is ``everyone``.

        :rtype: bool
        """
        return self._tag == 'everyone'

    def is_specific_members(self):
        """
        Check if the union tag is ``specific_members``.

        :rtype: bool
        """
        return self._tag == 'specific_members'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSendInvitePolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSendInvitePolicy_validator = bv.Union(MemberSendInvitePolicy)

class MemberSendInvitePolicyChangedDetails(bb.Struct):
    """
    Changed member send invite policy for team.

    :ivar team_log.MemberSendInvitePolicyChangedDetails.new_value: New team
        member send invite policy.
    :ivar team_log.MemberSendInvitePolicyChangedDetails.previous_value: Previous
        team member send invite policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: MemberSendInvitePolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: MemberSendInvitePolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSendInvitePolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSendInvitePolicyChangedDetails_validator = bv.Struct(MemberSendInvitePolicyChangedDetails)

class MemberSendInvitePolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSendInvitePolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSendInvitePolicyChangedType_validator = bv.Struct(MemberSendInvitePolicyChangedType)

class MemberSetProfilePhotoDetails(bb.Struct):
    """
    Set team member profile photo.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSetProfilePhotoDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSetProfilePhotoDetails_validator = bv.Struct(MemberSetProfilePhotoDetails)

class MemberSetProfilePhotoType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSetProfilePhotoType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSetProfilePhotoType_validator = bv.Struct(MemberSetProfilePhotoType)

class MemberSpaceLimitsAddCustomQuotaDetails(bb.Struct):
    """
    Set custom member space limit.

    :ivar team_log.MemberSpaceLimitsAddCustomQuotaDetails.new_value: New custom
        quota value in bytes.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: int (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsAddCustomQuotaDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsAddCustomQuotaDetails_validator = bv.Struct(MemberSpaceLimitsAddCustomQuotaDetails)

class MemberSpaceLimitsAddCustomQuotaType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsAddCustomQuotaType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsAddCustomQuotaType_validator = bv.Struct(MemberSpaceLimitsAddCustomQuotaType)

class MemberSpaceLimitsAddExceptionDetails(bb.Struct):
    """
    Added members to member space limit exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsAddExceptionDetails_validator = bv.Struct(MemberSpaceLimitsAddExceptionDetails)

class MemberSpaceLimitsAddExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsAddExceptionType_validator = bv.Struct(MemberSpaceLimitsAddExceptionType)

class MemberSpaceLimitsChangeCapsTypePolicyDetails(bb.Struct):
    """
    Changed member space limit type for team.

    :ivar team_log.MemberSpaceLimitsChangeCapsTypePolicyDetails.previous_value:
        Previous space limit type.
    :ivar team_log.MemberSpaceLimitsChangeCapsTypePolicyDetails.new_value: New
        space limit type.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: SpaceCapsType (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: SpaceCapsType (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangeCapsTypePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangeCapsTypePolicyDetails_validator = bv.Struct(MemberSpaceLimitsChangeCapsTypePolicyDetails)

class MemberSpaceLimitsChangeCapsTypePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangeCapsTypePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangeCapsTypePolicyType_validator = bv.Struct(MemberSpaceLimitsChangeCapsTypePolicyType)

class MemberSpaceLimitsChangeCustomQuotaDetails(bb.Struct):
    """
    Changed custom member space limit.

    :ivar team_log.MemberSpaceLimitsChangeCustomQuotaDetails.previous_value:
        Previous custom quota value in bytes.
    :ivar team_log.MemberSpaceLimitsChangeCustomQuotaDetails.new_value: New
        custom quota value in bytes.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: int (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: int (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangeCustomQuotaDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangeCustomQuotaDetails_validator = bv.Struct(MemberSpaceLimitsChangeCustomQuotaDetails)

class MemberSpaceLimitsChangeCustomQuotaType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangeCustomQuotaType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangeCustomQuotaType_validator = bv.Struct(MemberSpaceLimitsChangeCustomQuotaType)

class MemberSpaceLimitsChangePolicyDetails(bb.Struct):
    """
    Changed team default member space limit.

    :ivar team_log.MemberSpaceLimitsChangePolicyDetails.previous_value: Previous
        team default limit value in bytes. Might be missing due to historical
        data gap.
    :ivar team_log.MemberSpaceLimitsChangePolicyDetails.new_value: New team
        default limit value in bytes. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: int (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    # Instance attribute type: int (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangePolicyDetails_validator = bv.Struct(MemberSpaceLimitsChangePolicyDetails)

class MemberSpaceLimitsChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangePolicyType_validator = bv.Struct(MemberSpaceLimitsChangePolicyType)

class MemberSpaceLimitsChangeStatusDetails(bb.Struct):
    """
    Changed space limit status.

    :ivar team_log.MemberSpaceLimitsChangeStatusDetails.previous_value: Previous
        storage quota status.
    :ivar team_log.MemberSpaceLimitsChangeStatusDetails.new_value: New storage
        quota status.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: SpaceLimitsStatus (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: SpaceLimitsStatus (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangeStatusDetails_validator = bv.Struct(MemberSpaceLimitsChangeStatusDetails)

class MemberSpaceLimitsChangeStatusType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsChangeStatusType_validator = bv.Struct(MemberSpaceLimitsChangeStatusType)

class MemberSpaceLimitsRemoveCustomQuotaDetails(bb.Struct):
    """
    Removed custom member space limit.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsRemoveCustomQuotaDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsRemoveCustomQuotaDetails_validator = bv.Struct(MemberSpaceLimitsRemoveCustomQuotaDetails)

class MemberSpaceLimitsRemoveCustomQuotaType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsRemoveCustomQuotaType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsRemoveCustomQuotaType_validator = bv.Struct(MemberSpaceLimitsRemoveCustomQuotaType)

class MemberSpaceLimitsRemoveExceptionDetails(bb.Struct):
    """
    Removed members from member space limit exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsRemoveExceptionDetails_validator = bv.Struct(MemberSpaceLimitsRemoveExceptionDetails)

class MemberSpaceLimitsRemoveExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSpaceLimitsRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSpaceLimitsRemoveExceptionType_validator = bv.Struct(MemberSpaceLimitsRemoveExceptionType)

class MemberStatus(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    active = None
    # Attribute is overwritten below the class definition
    invited = None
    # Attribute is overwritten below the class definition
    moved_to_another_team = None
    # Attribute is overwritten below the class definition
    not_joined = None
    # Attribute is overwritten below the class definition
    removed = None
    # Attribute is overwritten below the class definition
    suspended = None
    # Attribute is overwritten below the class definition
    other = None

    def is_active(self):
        """
        Check if the union tag is ``active``.

        :rtype: bool
        """
        return self._tag == 'active'

    def is_invited(self):
        """
        Check if the union tag is ``invited``.

        :rtype: bool
        """
        return self._tag == 'invited'

    def is_moved_to_another_team(self):
        """
        Check if the union tag is ``moved_to_another_team``.

        :rtype: bool
        """
        return self._tag == 'moved_to_another_team'

    def is_not_joined(self):
        """
        Check if the union tag is ``not_joined``.

        :rtype: bool
        """
        return self._tag == 'not_joined'

    def is_removed(self):
        """
        Check if the union tag is ``removed``.

        :rtype: bool
        """
        return self._tag == 'removed'

    def is_suspended(self):
        """
        Check if the union tag is ``suspended``.

        :rtype: bool
        """
        return self._tag == 'suspended'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberStatus, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberStatus_validator = bv.Union(MemberStatus)

class MemberSuggestDetails(bb.Struct):
    """
    Suggested person to add to team.

    :ivar team_log.MemberSuggestDetails.suggested_members: suggested users
        emails.
    """

    __slots__ = [
        '_suggested_members_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 suggested_members=None):
        self._suggested_members_value = bb.NOT_SET
        if suggested_members is not None:
            self.suggested_members = suggested_members

    # Instance attribute type: list of [str] (validator is set below)
    suggested_members = bb.Attribute("suggested_members")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSuggestDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSuggestDetails_validator = bv.Struct(MemberSuggestDetails)

class MemberSuggestType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSuggestType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSuggestType_validator = bv.Struct(MemberSuggestType)

class MemberSuggestionsChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled option for team members to suggest people to add to team.

    :ivar team_log.MemberSuggestionsChangePolicyDetails.new_value: New team
        member suggestions policy.
    :ivar team_log.MemberSuggestionsChangePolicyDetails.previous_value: Previous
        team member suggestions policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: MemberSuggestionsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: MemberSuggestionsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSuggestionsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSuggestionsChangePolicyDetails_validator = bv.Struct(MemberSuggestionsChangePolicyDetails)

class MemberSuggestionsChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSuggestionsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSuggestionsChangePolicyType_validator = bv.Struct(MemberSuggestionsChangePolicyType)

class MemberSuggestionsPolicy(bb.Union):
    """
    Member suggestions policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberSuggestionsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberSuggestionsPolicy_validator = bv.Union(MemberSuggestionsPolicy)

class MemberTransferAccountContentsDetails(bb.Struct):
    """
    Transferred contents of deleted member account to another member.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberTransferAccountContentsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberTransferAccountContentsDetails_validator = bv.Struct(MemberTransferAccountContentsDetails)

class MemberTransferAccountContentsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberTransferAccountContentsType, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberTransferAccountContentsType_validator = bv.Struct(MemberTransferAccountContentsType)

class MemberTransferredInternalFields(bb.Struct):
    """
    Internal only - fields for target team computations

    :ivar team_log.MemberTransferredInternalFields.source_team_id: Internal only
        - team user was moved from.
    :ivar team_log.MemberTransferredInternalFields.target_team_id: Internal only
        - team user was moved to.
    """

    __slots__ = [
        '_source_team_id_value',
        '_target_team_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 source_team_id=None,
                 target_team_id=None):
        self._source_team_id_value = bb.NOT_SET
        self._target_team_id_value = bb.NOT_SET
        if source_team_id is not None:
            self.source_team_id = source_team_id
        if target_team_id is not None:
            self.target_team_id = target_team_id

    # Instance attribute type: str (validator is set below)
    source_team_id = bb.Attribute("source_team_id")

    # Instance attribute type: str (validator is set below)
    target_team_id = bb.Attribute("target_team_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MemberTransferredInternalFields, self)._process_custom_annotations(annotation_type, field_path, processor)

MemberTransferredInternalFields_validator = bv.Struct(MemberTransferredInternalFields)

class MicrosoftOfficeAddinChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled Microsoft Office add-in.

    :ivar team_log.MicrosoftOfficeAddinChangePolicyDetails.new_value: New
        Microsoft Office addin policy.
    :ivar team_log.MicrosoftOfficeAddinChangePolicyDetails.previous_value:
        Previous Microsoft Office addin policy. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: MicrosoftOfficeAddinPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: MicrosoftOfficeAddinPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MicrosoftOfficeAddinChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MicrosoftOfficeAddinChangePolicyDetails_validator = bv.Struct(MicrosoftOfficeAddinChangePolicyDetails)

class MicrosoftOfficeAddinChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MicrosoftOfficeAddinChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

MicrosoftOfficeAddinChangePolicyType_validator = bv.Struct(MicrosoftOfficeAddinChangePolicyType)

class MicrosoftOfficeAddinPolicy(bb.Union):
    """
    Microsoft Office addin policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MicrosoftOfficeAddinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

MicrosoftOfficeAddinPolicy_validator = bv.Union(MicrosoftOfficeAddinPolicy)

class MissingDetails(bb.Struct):
    """
    An indication that an error occurred while retrieving the event. Some
    attributes of the event may be omitted as a result.

    :ivar team_log.MissingDetails.source_event_fields: All the data that could
        be retrieved and converted from the source event.
    """

    __slots__ = [
        '_source_event_fields_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 source_event_fields=None):
        self._source_event_fields_value = bb.NOT_SET
        if source_event_fields is not None:
            self.source_event_fields = source_event_fields

    # Instance attribute type: str (validator is set below)
    source_event_fields = bb.Attribute("source_event_fields", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MissingDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

MissingDetails_validator = bv.Struct(MissingDetails)

class MobileDeviceSessionLogInfo(DeviceSessionLogInfo):
    """
    Information about linked Dropbox mobile client sessions

    :ivar team_log.MobileDeviceSessionLogInfo.session_info: Mobile session
        unique id.
    :ivar team_log.MobileDeviceSessionLogInfo.device_name: The device name.
    :ivar team_log.MobileDeviceSessionLogInfo.client_type: The mobile
        application type.
    :ivar team_log.MobileDeviceSessionLogInfo.client_version: The Dropbox client
        version.
    :ivar team_log.MobileDeviceSessionLogInfo.os_version: The hosting OS
        version.
    :ivar team_log.MobileDeviceSessionLogInfo.last_carrier: last carrier used by
        the device.
    """

    __slots__ = [
        '_session_info_value',
        '_device_name_value',
        '_client_type_value',
        '_client_version_value',
        '_os_version_value',
        '_last_carrier_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 device_name=None,
                 client_type=None,
                 ip_address=None,
                 created=None,
                 updated=None,
                 session_info=None,
                 client_version=None,
                 os_version=None,
                 last_carrier=None):
        super(MobileDeviceSessionLogInfo, self).__init__(ip_address,
                                                         created,
                                                         updated)
        self._session_info_value = bb.NOT_SET
        self._device_name_value = bb.NOT_SET
        self._client_type_value = bb.NOT_SET
        self._client_version_value = bb.NOT_SET
        self._os_version_value = bb.NOT_SET
        self._last_carrier_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if device_name is not None:
            self.device_name = device_name
        if client_type is not None:
            self.client_type = client_type
        if client_version is not None:
            self.client_version = client_version
        if os_version is not None:
            self.os_version = os_version
        if last_carrier is not None:
            self.last_carrier = last_carrier

    # Instance attribute type: MobileSessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    device_name = bb.Attribute("device_name")

    # Instance attribute type: team.MobileClientPlatform (validator is set below)
    client_type = bb.Attribute("client_type", user_defined=True)

    # Instance attribute type: str (validator is set below)
    client_version = bb.Attribute("client_version", nullable=True)

    # Instance attribute type: str (validator is set below)
    os_version = bb.Attribute("os_version", nullable=True)

    # Instance attribute type: str (validator is set below)
    last_carrier = bb.Attribute("last_carrier", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MobileDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

MobileDeviceSessionLogInfo_validator = bv.Struct(MobileDeviceSessionLogInfo)

class MobileSessionLogInfo(SessionLogInfo):
    """
    Mobile session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 session_id=None):
        super(MobileSessionLogInfo, self).__init__(session_id)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(MobileSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

MobileSessionLogInfo_validator = bv.Struct(MobileSessionLogInfo)

class NamespaceRelativePathLogInfo(bb.Struct):
    """
    Namespace relative path details.

    :ivar team_log.NamespaceRelativePathLogInfo.ns_id: Namespace ID.
    :ivar team_log.NamespaceRelativePathLogInfo.relative_path: A path relative
        to the specified namespace ID.
    :ivar team_log.NamespaceRelativePathLogInfo.is_shared_namespace: True if the
        namespace is shared.
    """

    __slots__ = [
        '_ns_id_value',
        '_relative_path_value',
        '_is_shared_namespace_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 ns_id=None,
                 relative_path=None,
                 is_shared_namespace=None):
        self._ns_id_value = bb.NOT_SET
        self._relative_path_value = bb.NOT_SET
        self._is_shared_namespace_value = bb.NOT_SET
        if ns_id is not None:
            self.ns_id = ns_id
        if relative_path is not None:
            self.relative_path = relative_path
        if is_shared_namespace is not None:
            self.is_shared_namespace = is_shared_namespace

    # Instance attribute type: str (validator is set below)
    ns_id = bb.Attribute("ns_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    relative_path = bb.Attribute("relative_path", nullable=True)

    # Instance attribute type: bool (validator is set below)
    is_shared_namespace = bb.Attribute("is_shared_namespace", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NamespaceRelativePathLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

NamespaceRelativePathLogInfo_validator = bv.Struct(NamespaceRelativePathLogInfo)

class NetworkControlChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled network control.

    :ivar team_log.NetworkControlChangePolicyDetails.new_value: New network
        control policy.
    :ivar team_log.NetworkControlChangePolicyDetails.previous_value: Previous
        network control policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: NetworkControlPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: NetworkControlPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NetworkControlChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NetworkControlChangePolicyDetails_validator = bv.Struct(NetworkControlChangePolicyDetails)

class NetworkControlChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NetworkControlChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

NetworkControlChangePolicyType_validator = bv.Struct(NetworkControlChangePolicyType)

class NetworkControlPolicy(bb.Union):
    """
    Network control policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NetworkControlPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

NetworkControlPolicy_validator = bv.Union(NetworkControlPolicy)

class NoExpirationLinkGenCreateReportDetails(bb.Struct):
    """
    Report created: Links created with no expiration.

    :ivar team_log.NoExpirationLinkGenCreateReportDetails.start_date: Report
        start date.
    :ivar team_log.NoExpirationLinkGenCreateReportDetails.end_date: Report end
        date.
    """

    __slots__ = [
        '_start_date_value',
        '_end_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 start_date=None,
                 end_date=None):
        self._start_date_value = bb.NOT_SET
        self._end_date_value = bb.NOT_SET
        if start_date is not None:
            self.start_date = start_date
        if end_date is not None:
            self.end_date = end_date

    # Instance attribute type: datetime.datetime (validator is set below)
    start_date = bb.Attribute("start_date")

    # Instance attribute type: datetime.datetime (validator is set below)
    end_date = bb.Attribute("end_date")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoExpirationLinkGenCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoExpirationLinkGenCreateReportDetails_validator = bv.Struct(NoExpirationLinkGenCreateReportDetails)

class NoExpirationLinkGenCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoExpirationLinkGenCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoExpirationLinkGenCreateReportType_validator = bv.Struct(NoExpirationLinkGenCreateReportType)

class NoExpirationLinkGenReportFailedDetails(bb.Struct):
    """
    Couldn't create report: Links created with no expiration.

    :ivar team_log.NoExpirationLinkGenReportFailedDetails.failure_reason:
        Failure reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoExpirationLinkGenReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoExpirationLinkGenReportFailedDetails_validator = bv.Struct(NoExpirationLinkGenReportFailedDetails)

class NoExpirationLinkGenReportFailedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoExpirationLinkGenReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoExpirationLinkGenReportFailedType_validator = bv.Struct(NoExpirationLinkGenReportFailedType)

class NoPasswordLinkGenCreateReportDetails(bb.Struct):
    """
    Report created: Links created without passwords.

    :ivar team_log.NoPasswordLinkGenCreateReportDetails.start_date: Report start
        date.
    :ivar team_log.NoPasswordLinkGenCreateReportDetails.end_date: Report end
        date.
    """

    __slots__ = [
        '_start_date_value',
        '_end_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 start_date=None,
                 end_date=None):
        self._start_date_value = bb.NOT_SET
        self._end_date_value = bb.NOT_SET
        if start_date is not None:
            self.start_date = start_date
        if end_date is not None:
            self.end_date = end_date

    # Instance attribute type: datetime.datetime (validator is set below)
    start_date = bb.Attribute("start_date")

    # Instance attribute type: datetime.datetime (validator is set below)
    end_date = bb.Attribute("end_date")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkGenCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkGenCreateReportDetails_validator = bv.Struct(NoPasswordLinkGenCreateReportDetails)

class NoPasswordLinkGenCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkGenCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkGenCreateReportType_validator = bv.Struct(NoPasswordLinkGenCreateReportType)

class NoPasswordLinkGenReportFailedDetails(bb.Struct):
    """
    Couldn't create report: Links created without passwords.

    :ivar team_log.NoPasswordLinkGenReportFailedDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkGenReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkGenReportFailedDetails_validator = bv.Struct(NoPasswordLinkGenReportFailedDetails)

class NoPasswordLinkGenReportFailedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkGenReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkGenReportFailedType_validator = bv.Struct(NoPasswordLinkGenReportFailedType)

class NoPasswordLinkViewCreateReportDetails(bb.Struct):
    """
    Report created: Views of links without passwords.

    :ivar team_log.NoPasswordLinkViewCreateReportDetails.start_date: Report
        start date.
    :ivar team_log.NoPasswordLinkViewCreateReportDetails.end_date: Report end
        date.
    """

    __slots__ = [
        '_start_date_value',
        '_end_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 start_date=None,
                 end_date=None):
        self._start_date_value = bb.NOT_SET
        self._end_date_value = bb.NOT_SET
        if start_date is not None:
            self.start_date = start_date
        if end_date is not None:
            self.end_date = end_date

    # Instance attribute type: datetime.datetime (validator is set below)
    start_date = bb.Attribute("start_date")

    # Instance attribute type: datetime.datetime (validator is set below)
    end_date = bb.Attribute("end_date")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkViewCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkViewCreateReportDetails_validator = bv.Struct(NoPasswordLinkViewCreateReportDetails)

class NoPasswordLinkViewCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkViewCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkViewCreateReportType_validator = bv.Struct(NoPasswordLinkViewCreateReportType)

class NoPasswordLinkViewReportFailedDetails(bb.Struct):
    """
    Couldn't create report: Views of links without passwords.

    :ivar team_log.NoPasswordLinkViewReportFailedDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkViewReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkViewReportFailedDetails_validator = bv.Struct(NoPasswordLinkViewReportFailedDetails)

class NoPasswordLinkViewReportFailedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoPasswordLinkViewReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoPasswordLinkViewReportFailedType_validator = bv.Struct(NoPasswordLinkViewReportFailedType)

class UserLogInfo(bb.Struct):
    """
    User's logged information.

    :ivar team_log.UserLogInfo.account_id: User unique ID.
    :ivar team_log.UserLogInfo.display_name: User display name.
    :ivar team_log.UserLogInfo.email: User email address.
    """

    __slots__ = [
        '_account_id_value',
        '_display_name_value',
        '_email_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 account_id=None,
                 display_name=None,
                 email=None):
        self._account_id_value = bb.NOT_SET
        self._display_name_value = bb.NOT_SET
        self._email_value = bb.NOT_SET
        if account_id is not None:
            self.account_id = account_id
        if display_name is not None:
            self.display_name = display_name
        if email is not None:
            self.email = email

    # Instance attribute type: str (validator is set below)
    account_id = bb.Attribute("account_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name", nullable=True)

    # Instance attribute type: str (validator is set below)
    email = bb.Attribute("email", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

UserLogInfo_validator = bv.StructTree(UserLogInfo)

class NonTeamMemberLogInfo(UserLogInfo):
    """
    Non team member's logged information.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 account_id=None,
                 display_name=None,
                 email=None):
        super(NonTeamMemberLogInfo, self).__init__(account_id,
                                                   display_name,
                                                   email)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NonTeamMemberLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

NonTeamMemberLogInfo_validator = bv.Struct(NonTeamMemberLogInfo)

class NonTrustedTeamDetails(bb.Struct):
    """
    The email to which the request was sent

    :ivar team_log.NonTrustedTeamDetails.team: The email to which the request
        was sent.
    """

    __slots__ = [
        '_team_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team=None):
        self._team_value = bb.NOT_SET
        if team is not None:
            self.team = team

    # Instance attribute type: str (validator is set below)
    team = bb.Attribute("team")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NonTrustedTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NonTrustedTeamDetails_validator = bv.Struct(NonTrustedTeamDetails)

class NoteAclInviteOnlyDetails(bb.Struct):
    """
    Changed Paper doc to invite-only.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteAclInviteOnlyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteAclInviteOnlyDetails_validator = bv.Struct(NoteAclInviteOnlyDetails)

class NoteAclInviteOnlyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteAclInviteOnlyType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteAclInviteOnlyType_validator = bv.Struct(NoteAclInviteOnlyType)

class NoteAclLinkDetails(bb.Struct):
    """
    Changed Paper doc to link-accessible.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteAclLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteAclLinkDetails_validator = bv.Struct(NoteAclLinkDetails)

class NoteAclLinkType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteAclLinkType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteAclLinkType_validator = bv.Struct(NoteAclLinkType)

class NoteAclTeamLinkDetails(bb.Struct):
    """
    Changed Paper doc to link-accessible for team.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteAclTeamLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteAclTeamLinkDetails_validator = bv.Struct(NoteAclTeamLinkDetails)

class NoteAclTeamLinkType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteAclTeamLinkType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteAclTeamLinkType_validator = bv.Struct(NoteAclTeamLinkType)

class NoteShareReceiveDetails(bb.Struct):
    """
    Shared received Paper doc.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteShareReceiveDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteShareReceiveDetails_validator = bv.Struct(NoteShareReceiveDetails)

class NoteShareReceiveType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteShareReceiveType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteShareReceiveType_validator = bv.Struct(NoteShareReceiveType)

class NoteSharedDetails(bb.Struct):
    """
    Shared Paper doc.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteSharedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteSharedDetails_validator = bv.Struct(NoteSharedDetails)

class NoteSharedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(NoteSharedType, self)._process_custom_annotations(annotation_type, field_path, processor)

NoteSharedType_validator = bv.Struct(NoteSharedType)

class ObjectLabelAddedDetails(bb.Struct):
    """
    Added a label.

    :ivar team_log.ObjectLabelAddedDetails.label_type: Labels mark a file or
        folder.
    """

    __slots__ = [
        '_label_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 label_type=None):
        self._label_type_value = bb.NOT_SET
        if label_type is not None:
            self.label_type = label_type

    # Instance attribute type: LabelType (validator is set below)
    label_type = bb.Attribute("label_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ObjectLabelAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ObjectLabelAddedDetails_validator = bv.Struct(ObjectLabelAddedDetails)

class ObjectLabelAddedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ObjectLabelAddedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ObjectLabelAddedType_validator = bv.Struct(ObjectLabelAddedType)

class ObjectLabelRemovedDetails(bb.Struct):
    """
    Removed a label.

    :ivar team_log.ObjectLabelRemovedDetails.label_type: Labels mark a file or
        folder.
    """

    __slots__ = [
        '_label_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 label_type=None):
        self._label_type_value = bb.NOT_SET
        if label_type is not None:
            self.label_type = label_type

    # Instance attribute type: LabelType (validator is set below)
    label_type = bb.Attribute("label_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ObjectLabelRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ObjectLabelRemovedDetails_validator = bv.Struct(ObjectLabelRemovedDetails)

class ObjectLabelRemovedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ObjectLabelRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ObjectLabelRemovedType_validator = bv.Struct(ObjectLabelRemovedType)

class ObjectLabelUpdatedValueDetails(bb.Struct):
    """
    Updated a label's value.

    :ivar team_log.ObjectLabelUpdatedValueDetails.label_type: Labels mark a file
        or folder.
    """

    __slots__ = [
        '_label_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 label_type=None):
        self._label_type_value = bb.NOT_SET
        if label_type is not None:
            self.label_type = label_type

    # Instance attribute type: LabelType (validator is set below)
    label_type = bb.Attribute("label_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ObjectLabelUpdatedValueDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ObjectLabelUpdatedValueDetails_validator = bv.Struct(ObjectLabelUpdatedValueDetails)

class ObjectLabelUpdatedValueType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ObjectLabelUpdatedValueType, self)._process_custom_annotations(annotation_type, field_path, processor)

ObjectLabelUpdatedValueType_validator = bv.Struct(ObjectLabelUpdatedValueType)

class OpenNoteSharedDetails(bb.Struct):
    """
    Opened shared Paper doc.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OpenNoteSharedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

OpenNoteSharedDetails_validator = bv.Struct(OpenNoteSharedDetails)

class OpenNoteSharedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OpenNoteSharedType, self)._process_custom_annotations(annotation_type, field_path, processor)

OpenNoteSharedType_validator = bv.Struct(OpenNoteSharedType)

class OrganizationDetails(bb.Struct):
    """
    More details about the organization.

    :ivar team_log.OrganizationDetails.organization: The name of the
        organization.
    """

    __slots__ = [
        '_organization_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 organization=None):
        self._organization_value = bb.NOT_SET
        if organization is not None:
            self.organization = organization

    # Instance attribute type: str (validator is set below)
    organization = bb.Attribute("organization")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OrganizationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

OrganizationDetails_validator = bv.Struct(OrganizationDetails)

class OrganizationName(bb.Struct):
    """
    The name of the organization

    :ivar team_log.OrganizationName.organization: The name of the organization.
    """

    __slots__ = [
        '_organization_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 organization=None):
        self._organization_value = bb.NOT_SET
        if organization is not None:
            self.organization = organization

    # Instance attribute type: str (validator is set below)
    organization = bb.Attribute("organization")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OrganizationName, self)._process_custom_annotations(annotation_type, field_path, processor)

OrganizationName_validator = bv.Struct(OrganizationName)

class OrganizeFolderWithTidyDetails(bb.Struct):
    """
    Organized a folder with multi-file organize.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OrganizeFolderWithTidyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

OrganizeFolderWithTidyDetails_validator = bv.Struct(OrganizeFolderWithTidyDetails)

class OrganizeFolderWithTidyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OrganizeFolderWithTidyType, self)._process_custom_annotations(annotation_type, field_path, processor)

OrganizeFolderWithTidyType_validator = bv.Struct(OrganizeFolderWithTidyType)

class OriginLogInfo(bb.Struct):
    """
    The origin from which the actor performed the action.

    :ivar team_log.OriginLogInfo.geo_location: Geographic location details.
    :ivar team_log.OriginLogInfo.access_method: The method that was used to
        perform the action.
    """

    __slots__ = [
        '_geo_location_value',
        '_access_method_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 access_method=None,
                 geo_location=None):
        self._geo_location_value = bb.NOT_SET
        self._access_method_value = bb.NOT_SET
        if geo_location is not None:
            self.geo_location = geo_location
        if access_method is not None:
            self.access_method = access_method

    # Instance attribute type: GeoLocationLogInfo (validator is set below)
    geo_location = bb.Attribute("geo_location", nullable=True, user_defined=True)

    # Instance attribute type: AccessMethodLogInfo (validator is set below)
    access_method = bb.Attribute("access_method", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OriginLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

OriginLogInfo_validator = bv.Struct(OriginLogInfo)

class OutdatedLinkViewCreateReportDetails(bb.Struct):
    """
    Report created: Views of old links.

    :ivar team_log.OutdatedLinkViewCreateReportDetails.start_date: Report start
        date.
    :ivar team_log.OutdatedLinkViewCreateReportDetails.end_date: Report end
        date.
    """

    __slots__ = [
        '_start_date_value',
        '_end_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 start_date=None,
                 end_date=None):
        self._start_date_value = bb.NOT_SET
        self._end_date_value = bb.NOT_SET
        if start_date is not None:
            self.start_date = start_date
        if end_date is not None:
            self.end_date = end_date

    # Instance attribute type: datetime.datetime (validator is set below)
    start_date = bb.Attribute("start_date")

    # Instance attribute type: datetime.datetime (validator is set below)
    end_date = bb.Attribute("end_date")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OutdatedLinkViewCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

OutdatedLinkViewCreateReportDetails_validator = bv.Struct(OutdatedLinkViewCreateReportDetails)

class OutdatedLinkViewCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OutdatedLinkViewCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

OutdatedLinkViewCreateReportType_validator = bv.Struct(OutdatedLinkViewCreateReportType)

class OutdatedLinkViewReportFailedDetails(bb.Struct):
    """
    Couldn't create report: Views of old links.

    :ivar team_log.OutdatedLinkViewReportFailedDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OutdatedLinkViewReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

OutdatedLinkViewReportFailedDetails_validator = bv.Struct(OutdatedLinkViewReportFailedDetails)

class OutdatedLinkViewReportFailedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(OutdatedLinkViewReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)

OutdatedLinkViewReportFailedType_validator = bv.Struct(OutdatedLinkViewReportFailedType)

class PaperAccessType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    commenter = None
    # Attribute is overwritten below the class definition
    editor = None
    # Attribute is overwritten below the class definition
    viewer = None
    # Attribute is overwritten below the class definition
    other = None

    def is_commenter(self):
        """
        Check if the union tag is ``commenter``.

        :rtype: bool
        """
        return self._tag == 'commenter'

    def is_editor(self):
        """
        Check if the union tag is ``editor``.

        :rtype: bool
        """
        return self._tag == 'editor'

    def is_viewer(self):
        """
        Check if the union tag is ``viewer``.

        :rtype: bool
        """
        return self._tag == 'viewer'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperAccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperAccessType_validator = bv.Union(PaperAccessType)

class PaperAdminExportStartDetails(bb.Struct):
    """
    Exported all team Paper docs.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperAdminExportStartDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperAdminExportStartDetails_validator = bv.Struct(PaperAdminExportStartDetails)

class PaperAdminExportStartType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperAdminExportStartType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperAdminExportStartType_validator = bv.Struct(PaperAdminExportStartType)

class PaperChangeDeploymentPolicyDetails(bb.Struct):
    """
    Changed whether Dropbox Paper, when enabled, is deployed to all members or
    to specific members.

    :ivar team_log.PaperChangeDeploymentPolicyDetails.new_value: New Dropbox
        Paper deployment policy.
    :ivar team_log.PaperChangeDeploymentPolicyDetails.previous_value: Previous
        Dropbox Paper deployment policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.PaperDeploymentPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.PaperDeploymentPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangeDeploymentPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangeDeploymentPolicyDetails_validator = bv.Struct(PaperChangeDeploymentPolicyDetails)

class PaperChangeDeploymentPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangeDeploymentPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangeDeploymentPolicyType_validator = bv.Struct(PaperChangeDeploymentPolicyType)

class PaperChangeMemberLinkPolicyDetails(bb.Struct):
    """
    Changed whether non-members can view Paper docs with link.

    :ivar team_log.PaperChangeMemberLinkPolicyDetails.new_value: New paper
        external link accessibility policy.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: PaperMemberPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangeMemberLinkPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangeMemberLinkPolicyDetails_validator = bv.Struct(PaperChangeMemberLinkPolicyDetails)

class PaperChangeMemberLinkPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangeMemberLinkPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangeMemberLinkPolicyType_validator = bv.Struct(PaperChangeMemberLinkPolicyType)

class PaperChangeMemberPolicyDetails(bb.Struct):
    """
    Changed whether members can share Paper docs outside team, and if docs are
    accessible only by team members or anyone by default.

    :ivar team_log.PaperChangeMemberPolicyDetails.new_value: New paper external
        accessibility policy.
    :ivar team_log.PaperChangeMemberPolicyDetails.previous_value: Previous paper
        external accessibility policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: PaperMemberPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: PaperMemberPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangeMemberPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangeMemberPolicyDetails_validator = bv.Struct(PaperChangeMemberPolicyDetails)

class PaperChangeMemberPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangeMemberPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangeMemberPolicyType_validator = bv.Struct(PaperChangeMemberPolicyType)

class PaperChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled Dropbox Paper for team.

    :ivar team_log.PaperChangePolicyDetails.new_value: New Dropbox Paper policy.
    :ivar team_log.PaperChangePolicyDetails.previous_value: Previous Dropbox
        Paper policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.PaperEnabledPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.PaperEnabledPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangePolicyDetails_validator = bv.Struct(PaperChangePolicyDetails)

class PaperChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperChangePolicyType_validator = bv.Struct(PaperChangePolicyType)

class PaperContentAddMemberDetails(bb.Struct):
    """
    Added users and/or groups to Paper doc/folder.

    :ivar team_log.PaperContentAddMemberDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentAddMemberDetails_validator = bv.Struct(PaperContentAddMemberDetails)

class PaperContentAddMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentAddMemberType_validator = bv.Struct(PaperContentAddMemberType)

class PaperContentAddToFolderDetails(bb.Struct):
    """
    Added Paper doc/folder to folder.

    :ivar team_log.PaperContentAddToFolderDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperContentAddToFolderDetails.target_asset_index: Target
        asset position in the Assets list.
    :ivar team_log.PaperContentAddToFolderDetails.parent_asset_index: Parent
        asset position in the Assets list.
    """

    __slots__ = [
        '_event_uuid_value',
        '_target_asset_index_value',
        '_parent_asset_index_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 target_asset_index=None,
                 parent_asset_index=None):
        self._event_uuid_value = bb.NOT_SET
        self._target_asset_index_value = bb.NOT_SET
        self._parent_asset_index_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if parent_asset_index is not None:
            self.parent_asset_index = parent_asset_index

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: int (validator is set below)
    parent_asset_index = bb.Attribute("parent_asset_index")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentAddToFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentAddToFolderDetails_validator = bv.Struct(PaperContentAddToFolderDetails)

class PaperContentAddToFolderType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentAddToFolderType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentAddToFolderType_validator = bv.Struct(PaperContentAddToFolderType)

class PaperContentArchiveDetails(bb.Struct):
    """
    Archived Paper doc/folder.

    :ivar team_log.PaperContentArchiveDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentArchiveDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentArchiveDetails_validator = bv.Struct(PaperContentArchiveDetails)

class PaperContentArchiveType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentArchiveType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentArchiveType_validator = bv.Struct(PaperContentArchiveType)

class PaperContentCreateDetails(bb.Struct):
    """
    Created Paper doc/folder.

    :ivar team_log.PaperContentCreateDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentCreateDetails_validator = bv.Struct(PaperContentCreateDetails)

class PaperContentCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentCreateType_validator = bv.Struct(PaperContentCreateType)

class PaperContentPermanentlyDeleteDetails(bb.Struct):
    """
    Permanently deleted Paper doc/folder.

    :ivar team_log.PaperContentPermanentlyDeleteDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentPermanentlyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentPermanentlyDeleteDetails_validator = bv.Struct(PaperContentPermanentlyDeleteDetails)

class PaperContentPermanentlyDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentPermanentlyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentPermanentlyDeleteType_validator = bv.Struct(PaperContentPermanentlyDeleteType)

class PaperContentRemoveFromFolderDetails(bb.Struct):
    """
    Removed Paper doc/folder from folder.

    :ivar team_log.PaperContentRemoveFromFolderDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperContentRemoveFromFolderDetails.target_asset_index:
        Target asset position in the Assets list.
    :ivar team_log.PaperContentRemoveFromFolderDetails.parent_asset_index:
        Parent asset position in the Assets list.
    """

    __slots__ = [
        '_event_uuid_value',
        '_target_asset_index_value',
        '_parent_asset_index_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 target_asset_index=None,
                 parent_asset_index=None):
        self._event_uuid_value = bb.NOT_SET
        self._target_asset_index_value = bb.NOT_SET
        self._parent_asset_index_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if parent_asset_index is not None:
            self.parent_asset_index = parent_asset_index

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index", nullable=True)

    # Instance attribute type: int (validator is set below)
    parent_asset_index = bb.Attribute("parent_asset_index", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRemoveFromFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRemoveFromFolderDetails_validator = bv.Struct(PaperContentRemoveFromFolderDetails)

class PaperContentRemoveFromFolderType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRemoveFromFolderType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRemoveFromFolderType_validator = bv.Struct(PaperContentRemoveFromFolderType)

class PaperContentRemoveMemberDetails(bb.Struct):
    """
    Removed users and/or groups from Paper doc/folder.

    :ivar team_log.PaperContentRemoveMemberDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRemoveMemberDetails_validator = bv.Struct(PaperContentRemoveMemberDetails)

class PaperContentRemoveMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRemoveMemberType_validator = bv.Struct(PaperContentRemoveMemberType)

class PaperContentRenameDetails(bb.Struct):
    """
    Renamed Paper doc/folder.

    :ivar team_log.PaperContentRenameDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRenameDetails_validator = bv.Struct(PaperContentRenameDetails)

class PaperContentRenameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRenameType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRenameType_validator = bv.Struct(PaperContentRenameType)

class PaperContentRestoreDetails(bb.Struct):
    """
    Restored archived Paper doc/folder.

    :ivar team_log.PaperContentRestoreDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRestoreDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRestoreDetails_validator = bv.Struct(PaperContentRestoreDetails)

class PaperContentRestoreType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperContentRestoreType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperContentRestoreType_validator = bv.Struct(PaperContentRestoreType)

class PaperDefaultFolderPolicy(bb.Union):
    """
    Policy to set default access for newly created Paper folders.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    everyone_in_team = None
    # Attribute is overwritten below the class definition
    invite_only = None
    # Attribute is overwritten below the class definition
    other = None

    def is_everyone_in_team(self):
        """
        Check if the union tag is ``everyone_in_team``.

        :rtype: bool
        """
        return self._tag == 'everyone_in_team'

    def is_invite_only(self):
        """
        Check if the union tag is ``invite_only``.

        :rtype: bool
        """
        return self._tag == 'invite_only'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDefaultFolderPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDefaultFolderPolicy_validator = bv.Union(PaperDefaultFolderPolicy)

class PaperDefaultFolderPolicyChangedDetails(bb.Struct):
    """
    Changed Paper Default Folder Policy setting for team.

    :ivar team_log.PaperDefaultFolderPolicyChangedDetails.new_value: New Paper
        Default Folder Policy.
    :ivar team_log.PaperDefaultFolderPolicyChangedDetails.previous_value:
        Previous Paper Default Folder Policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: PaperDefaultFolderPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: PaperDefaultFolderPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDefaultFolderPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDefaultFolderPolicyChangedDetails_validator = bv.Struct(PaperDefaultFolderPolicyChangedDetails)

class PaperDefaultFolderPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDefaultFolderPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDefaultFolderPolicyChangedType_validator = bv.Struct(PaperDefaultFolderPolicyChangedType)

class PaperDesktopPolicy(bb.Union):
    """
    Policy for controlling if team members can use Paper Desktop

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDesktopPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDesktopPolicy_validator = bv.Union(PaperDesktopPolicy)

class PaperDesktopPolicyChangedDetails(bb.Struct):
    """
    Enabled/disabled Paper Desktop for team.

    :ivar team_log.PaperDesktopPolicyChangedDetails.new_value: New Paper Desktop
        policy.
    :ivar team_log.PaperDesktopPolicyChangedDetails.previous_value: Previous
        Paper Desktop policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: PaperDesktopPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: PaperDesktopPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDesktopPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDesktopPolicyChangedDetails_validator = bv.Struct(PaperDesktopPolicyChangedDetails)

class PaperDesktopPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDesktopPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDesktopPolicyChangedType_validator = bv.Struct(PaperDesktopPolicyChangedType)

class PaperDocAddCommentDetails(bb.Struct):
    """
    Added Paper doc comment.

    :ivar team_log.PaperDocAddCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocAddCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocAddCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocAddCommentDetails_validator = bv.Struct(PaperDocAddCommentDetails)

class PaperDocAddCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocAddCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocAddCommentType_validator = bv.Struct(PaperDocAddCommentType)

class PaperDocChangeMemberRoleDetails(bb.Struct):
    """
    Changed member permissions for Paper doc.

    :ivar team_log.PaperDocChangeMemberRoleDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocChangeMemberRoleDetails.access_type: Paper doc access
        type.
    """

    __slots__ = [
        '_event_uuid_value',
        '_access_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 access_type=None):
        self._event_uuid_value = bb.NOT_SET
        self._access_type_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if access_type is not None:
            self.access_type = access_type

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: PaperAccessType (validator is set below)
    access_type = bb.Attribute("access_type", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocChangeMemberRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocChangeMemberRoleDetails_validator = bv.Struct(PaperDocChangeMemberRoleDetails)

class PaperDocChangeMemberRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocChangeMemberRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocChangeMemberRoleType_validator = bv.Struct(PaperDocChangeMemberRoleType)

class PaperDocChangeSharingPolicyDetails(bb.Struct):
    """
    Changed sharing setting for Paper doc.

    :ivar team_log.PaperDocChangeSharingPolicyDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocChangeSharingPolicyDetails.public_sharing_policy:
        Sharing policy with external users.
    :ivar team_log.PaperDocChangeSharingPolicyDetails.team_sharing_policy:
        Sharing policy with team.
    """

    __slots__ = [
        '_event_uuid_value',
        '_public_sharing_policy_value',
        '_team_sharing_policy_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 public_sharing_policy=None,
                 team_sharing_policy=None):
        self._event_uuid_value = bb.NOT_SET
        self._public_sharing_policy_value = bb.NOT_SET
        self._team_sharing_policy_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if public_sharing_policy is not None:
            self.public_sharing_policy = public_sharing_policy
        if team_sharing_policy is not None:
            self.team_sharing_policy = team_sharing_policy

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    public_sharing_policy = bb.Attribute("public_sharing_policy", nullable=True)

    # Instance attribute type: str (validator is set below)
    team_sharing_policy = bb.Attribute("team_sharing_policy", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocChangeSharingPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocChangeSharingPolicyDetails_validator = bv.Struct(PaperDocChangeSharingPolicyDetails)

class PaperDocChangeSharingPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocChangeSharingPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocChangeSharingPolicyType_validator = bv.Struct(PaperDocChangeSharingPolicyType)

class PaperDocChangeSubscriptionDetails(bb.Struct):
    """
    Followed/unfollowed Paper doc.

    :ivar team_log.PaperDocChangeSubscriptionDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocChangeSubscriptionDetails.new_subscription_level: New
        doc subscription level.
    :ivar
        team_log.PaperDocChangeSubscriptionDetails.previous_subscription_level:
        Previous doc subscription level. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_event_uuid_value',
        '_new_subscription_level_value',
        '_previous_subscription_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 new_subscription_level=None,
                 previous_subscription_level=None):
        self._event_uuid_value = bb.NOT_SET
        self._new_subscription_level_value = bb.NOT_SET
        self._previous_subscription_level_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if new_subscription_level is not None:
            self.new_subscription_level = new_subscription_level
        if previous_subscription_level is not None:
            self.previous_subscription_level = previous_subscription_level

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    new_subscription_level = bb.Attribute("new_subscription_level")

    # Instance attribute type: str (validator is set below)
    previous_subscription_level = bb.Attribute("previous_subscription_level", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocChangeSubscriptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocChangeSubscriptionDetails_validator = bv.Struct(PaperDocChangeSubscriptionDetails)

class PaperDocChangeSubscriptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocChangeSubscriptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocChangeSubscriptionType_validator = bv.Struct(PaperDocChangeSubscriptionType)

class PaperDocDeleteCommentDetails(bb.Struct):
    """
    Deleted Paper doc comment.

    :ivar team_log.PaperDocDeleteCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocDeleteCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocDeleteCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocDeleteCommentDetails_validator = bv.Struct(PaperDocDeleteCommentDetails)

class PaperDocDeleteCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocDeleteCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocDeleteCommentType_validator = bv.Struct(PaperDocDeleteCommentType)

class PaperDocDeletedDetails(bb.Struct):
    """
    Archived Paper doc.

    :ivar team_log.PaperDocDeletedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocDeletedDetails_validator = bv.Struct(PaperDocDeletedDetails)

class PaperDocDeletedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocDeletedType_validator = bv.Struct(PaperDocDeletedType)

class PaperDocDownloadDetails(bb.Struct):
    """
    Downloaded Paper doc in specific format.

    :ivar team_log.PaperDocDownloadDetails.event_uuid: Event unique identifier.
    :ivar team_log.PaperDocDownloadDetails.export_file_format: Export file
        format.
    """

    __slots__ = [
        '_event_uuid_value',
        '_export_file_format_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 export_file_format=None):
        self._event_uuid_value = bb.NOT_SET
        self._export_file_format_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if export_file_format is not None:
            self.export_file_format = export_file_format

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: PaperDownloadFormat (validator is set below)
    export_file_format = bb.Attribute("export_file_format", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocDownloadDetails_validator = bv.Struct(PaperDocDownloadDetails)

class PaperDocDownloadType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocDownloadType_validator = bv.Struct(PaperDocDownloadType)

class PaperDocEditCommentDetails(bb.Struct):
    """
    Edited Paper doc comment.

    :ivar team_log.PaperDocEditCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocEditCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocEditCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocEditCommentDetails_validator = bv.Struct(PaperDocEditCommentDetails)

class PaperDocEditCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocEditCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocEditCommentType_validator = bv.Struct(PaperDocEditCommentType)

class PaperDocEditDetails(bb.Struct):
    """
    Edited Paper doc.

    :ivar team_log.PaperDocEditDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocEditDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocEditDetails_validator = bv.Struct(PaperDocEditDetails)

class PaperDocEditType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocEditType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocEditType_validator = bv.Struct(PaperDocEditType)

class PaperDocFollowedDetails(bb.Struct):
    """
    Followed Paper doc.

    :ivar team_log.PaperDocFollowedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocFollowedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocFollowedDetails_validator = bv.Struct(PaperDocFollowedDetails)

class PaperDocFollowedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocFollowedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocFollowedType_validator = bv.Struct(PaperDocFollowedType)

class PaperDocMentionDetails(bb.Struct):
    """
    Mentioned user in Paper doc.

    :ivar team_log.PaperDocMentionDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocMentionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocMentionDetails_validator = bv.Struct(PaperDocMentionDetails)

class PaperDocMentionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocMentionType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocMentionType_validator = bv.Struct(PaperDocMentionType)

class PaperDocOwnershipChangedDetails(bb.Struct):
    """
    Transferred ownership of Paper doc.

    :ivar team_log.PaperDocOwnershipChangedDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocOwnershipChangedDetails.old_owner_user_id: Previous
        owner.
    :ivar team_log.PaperDocOwnershipChangedDetails.new_owner_user_id: New owner.
    """

    __slots__ = [
        '_event_uuid_value',
        '_old_owner_user_id_value',
        '_new_owner_user_id_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 new_owner_user_id=None,
                 old_owner_user_id=None):
        self._event_uuid_value = bb.NOT_SET
        self._old_owner_user_id_value = bb.NOT_SET
        self._new_owner_user_id_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if old_owner_user_id is not None:
            self.old_owner_user_id = old_owner_user_id
        if new_owner_user_id is not None:
            self.new_owner_user_id = new_owner_user_id

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    old_owner_user_id = bb.Attribute("old_owner_user_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    new_owner_user_id = bb.Attribute("new_owner_user_id")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocOwnershipChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocOwnershipChangedDetails_validator = bv.Struct(PaperDocOwnershipChangedDetails)

class PaperDocOwnershipChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocOwnershipChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocOwnershipChangedType_validator = bv.Struct(PaperDocOwnershipChangedType)

class PaperDocRequestAccessDetails(bb.Struct):
    """
    Requested access to Paper doc.

    :ivar team_log.PaperDocRequestAccessDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocRequestAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocRequestAccessDetails_validator = bv.Struct(PaperDocRequestAccessDetails)

class PaperDocRequestAccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocRequestAccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocRequestAccessType_validator = bv.Struct(PaperDocRequestAccessType)

class PaperDocResolveCommentDetails(bb.Struct):
    """
    Resolved Paper doc comment.

    :ivar team_log.PaperDocResolveCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocResolveCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocResolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocResolveCommentDetails_validator = bv.Struct(PaperDocResolveCommentDetails)

class PaperDocResolveCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocResolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocResolveCommentType_validator = bv.Struct(PaperDocResolveCommentType)

class PaperDocRevertDetails(bb.Struct):
    """
    Restored Paper doc to previous version.

    :ivar team_log.PaperDocRevertDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocRevertDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocRevertDetails_validator = bv.Struct(PaperDocRevertDetails)

class PaperDocRevertType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocRevertType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocRevertType_validator = bv.Struct(PaperDocRevertType)

class PaperDocSlackShareDetails(bb.Struct):
    """
    Shared Paper doc via Slack.

    :ivar team_log.PaperDocSlackShareDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocSlackShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocSlackShareDetails_validator = bv.Struct(PaperDocSlackShareDetails)

class PaperDocSlackShareType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocSlackShareType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocSlackShareType_validator = bv.Struct(PaperDocSlackShareType)

class PaperDocTeamInviteDetails(bb.Struct):
    """
    Shared Paper doc with users and/or groups.

    :ivar team_log.PaperDocTeamInviteDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocTeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocTeamInviteDetails_validator = bv.Struct(PaperDocTeamInviteDetails)

class PaperDocTeamInviteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocTeamInviteType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocTeamInviteType_validator = bv.Struct(PaperDocTeamInviteType)

class PaperDocTrashedDetails(bb.Struct):
    """
    Deleted Paper doc.

    :ivar team_log.PaperDocTrashedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocTrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocTrashedDetails_validator = bv.Struct(PaperDocTrashedDetails)

class PaperDocTrashedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocTrashedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocTrashedType_validator = bv.Struct(PaperDocTrashedType)

class PaperDocUnresolveCommentDetails(bb.Struct):
    """
    Unresolved Paper doc comment.

    :ivar team_log.PaperDocUnresolveCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperDocUnresolveCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocUnresolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocUnresolveCommentDetails_validator = bv.Struct(PaperDocUnresolveCommentDetails)

class PaperDocUnresolveCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocUnresolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocUnresolveCommentType_validator = bv.Struct(PaperDocUnresolveCommentType)

class PaperDocUntrashedDetails(bb.Struct):
    """
    Restored Paper doc.

    :ivar team_log.PaperDocUntrashedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocUntrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocUntrashedDetails_validator = bv.Struct(PaperDocUntrashedDetails)

class PaperDocUntrashedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocUntrashedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocUntrashedType_validator = bv.Struct(PaperDocUntrashedType)

class PaperDocViewDetails(bb.Struct):
    """
    Viewed Paper doc.

    :ivar team_log.PaperDocViewDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocViewDetails_validator = bv.Struct(PaperDocViewDetails)

class PaperDocViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocViewType_validator = bv.Struct(PaperDocViewType)

class PaperDocumentLogInfo(bb.Struct):
    """
    Paper document's logged information.

    :ivar team_log.PaperDocumentLogInfo.doc_id: Papers document Id.
    :ivar team_log.PaperDocumentLogInfo.doc_title: Paper document title.
    """

    __slots__ = [
        '_doc_id_value',
        '_doc_title_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 doc_id=None,
                 doc_title=None):
        self._doc_id_value = bb.NOT_SET
        self._doc_title_value = bb.NOT_SET
        if doc_id is not None:
            self.doc_id = doc_id
        if doc_title is not None:
            self.doc_title = doc_title

    # Instance attribute type: str (validator is set below)
    doc_id = bb.Attribute("doc_id")

    # Instance attribute type: str (validator is set below)
    doc_title = bb.Attribute("doc_title")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDocumentLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDocumentLogInfo_validator = bv.Struct(PaperDocumentLogInfo)

class PaperDownloadFormat(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    docx = None
    # Attribute is overwritten below the class definition
    html = None
    # Attribute is overwritten below the class definition
    markdown = None
    # Attribute is overwritten below the class definition
    pdf = None
    # Attribute is overwritten below the class definition
    other = None

    def is_docx(self):
        """
        Check if the union tag is ``docx``.

        :rtype: bool
        """
        return self._tag == 'docx'

    def is_html(self):
        """
        Check if the union tag is ``html``.

        :rtype: bool
        """
        return self._tag == 'html'

    def is_markdown(self):
        """
        Check if the union tag is ``markdown``.

        :rtype: bool
        """
        return self._tag == 'markdown'

    def is_pdf(self):
        """
        Check if the union tag is ``pdf``.

        :rtype: bool
        """
        return self._tag == 'pdf'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperDownloadFormat, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperDownloadFormat_validator = bv.Union(PaperDownloadFormat)

class PaperEnabledUsersGroupAdditionDetails(bb.Struct):
    """
    Added users to Paper-enabled users list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperEnabledUsersGroupAdditionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperEnabledUsersGroupAdditionDetails_validator = bv.Struct(PaperEnabledUsersGroupAdditionDetails)

class PaperEnabledUsersGroupAdditionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperEnabledUsersGroupAdditionType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperEnabledUsersGroupAdditionType_validator = bv.Struct(PaperEnabledUsersGroupAdditionType)

class PaperEnabledUsersGroupRemovalDetails(bb.Struct):
    """
    Removed users from Paper-enabled users list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperEnabledUsersGroupRemovalDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperEnabledUsersGroupRemovalDetails_validator = bv.Struct(PaperEnabledUsersGroupRemovalDetails)

class PaperEnabledUsersGroupRemovalType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperEnabledUsersGroupRemovalType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperEnabledUsersGroupRemovalType_validator = bv.Struct(PaperEnabledUsersGroupRemovalType)

class PaperExternalViewAllowDetails(bb.Struct):
    """
    Changed Paper external sharing setting to anyone.

    :ivar team_log.PaperExternalViewAllowDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperExternalViewAllowDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperExternalViewAllowDetails_validator = bv.Struct(PaperExternalViewAllowDetails)

class PaperExternalViewAllowType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperExternalViewAllowType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperExternalViewAllowType_validator = bv.Struct(PaperExternalViewAllowType)

class PaperExternalViewDefaultTeamDetails(bb.Struct):
    """
    Changed Paper external sharing setting to default team.

    :ivar team_log.PaperExternalViewDefaultTeamDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperExternalViewDefaultTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperExternalViewDefaultTeamDetails_validator = bv.Struct(PaperExternalViewDefaultTeamDetails)

class PaperExternalViewDefaultTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperExternalViewDefaultTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperExternalViewDefaultTeamType_validator = bv.Struct(PaperExternalViewDefaultTeamType)

class PaperExternalViewForbidDetails(bb.Struct):
    """
    Changed Paper external sharing setting to team-only.

    :ivar team_log.PaperExternalViewForbidDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperExternalViewForbidDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperExternalViewForbidDetails_validator = bv.Struct(PaperExternalViewForbidDetails)

class PaperExternalViewForbidType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperExternalViewForbidType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperExternalViewForbidType_validator = bv.Struct(PaperExternalViewForbidType)

class PaperFolderChangeSubscriptionDetails(bb.Struct):
    """
    Followed/unfollowed Paper folder.

    :ivar team_log.PaperFolderChangeSubscriptionDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.PaperFolderChangeSubscriptionDetails.new_subscription_level:
        New folder subscription level.
    :ivar
        team_log.PaperFolderChangeSubscriptionDetails.previous_subscription_level:
        Previous folder subscription level. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_event_uuid_value',
        '_new_subscription_level_value',
        '_previous_subscription_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 new_subscription_level=None,
                 previous_subscription_level=None):
        self._event_uuid_value = bb.NOT_SET
        self._new_subscription_level_value = bb.NOT_SET
        self._previous_subscription_level_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if new_subscription_level is not None:
            self.new_subscription_level = new_subscription_level
        if previous_subscription_level is not None:
            self.previous_subscription_level = previous_subscription_level

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    new_subscription_level = bb.Attribute("new_subscription_level")

    # Instance attribute type: str (validator is set below)
    previous_subscription_level = bb.Attribute("previous_subscription_level", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderChangeSubscriptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderChangeSubscriptionDetails_validator = bv.Struct(PaperFolderChangeSubscriptionDetails)

class PaperFolderChangeSubscriptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderChangeSubscriptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderChangeSubscriptionType_validator = bv.Struct(PaperFolderChangeSubscriptionType)

class PaperFolderDeletedDetails(bb.Struct):
    """
    Archived Paper folder.

    :ivar team_log.PaperFolderDeletedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderDeletedDetails_validator = bv.Struct(PaperFolderDeletedDetails)

class PaperFolderDeletedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderDeletedType_validator = bv.Struct(PaperFolderDeletedType)

class PaperFolderFollowedDetails(bb.Struct):
    """
    Followed Paper folder.

    :ivar team_log.PaperFolderFollowedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderFollowedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderFollowedDetails_validator = bv.Struct(PaperFolderFollowedDetails)

class PaperFolderFollowedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderFollowedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderFollowedType_validator = bv.Struct(PaperFolderFollowedType)

class PaperFolderLogInfo(bb.Struct):
    """
    Paper folder's logged information.

    :ivar team_log.PaperFolderLogInfo.folder_id: Papers folder Id.
    :ivar team_log.PaperFolderLogInfo.folder_name: Paper folder name.
    """

    __slots__ = [
        '_folder_id_value',
        '_folder_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 folder_id=None,
                 folder_name=None):
        self._folder_id_value = bb.NOT_SET
        self._folder_name_value = bb.NOT_SET
        if folder_id is not None:
            self.folder_id = folder_id
        if folder_name is not None:
            self.folder_name = folder_name

    # Instance attribute type: str (validator is set below)
    folder_id = bb.Attribute("folder_id")

    # Instance attribute type: str (validator is set below)
    folder_name = bb.Attribute("folder_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderLogInfo_validator = bv.Struct(PaperFolderLogInfo)

class PaperFolderTeamInviteDetails(bb.Struct):
    """
    Shared Paper folder with users and/or groups.

    :ivar team_log.PaperFolderTeamInviteDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderTeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderTeamInviteDetails_validator = bv.Struct(PaperFolderTeamInviteDetails)

class PaperFolderTeamInviteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperFolderTeamInviteType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperFolderTeamInviteType_validator = bv.Struct(PaperFolderTeamInviteType)

class PaperMemberPolicy(bb.Union):
    """
    Policy for controlling if team members can share Paper documents externally.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    anyone_with_link = None
    # Attribute is overwritten below the class definition
    only_team = None
    # Attribute is overwritten below the class definition
    team_and_explicitly_shared = None
    # Attribute is overwritten below the class definition
    other = None

    def is_anyone_with_link(self):
        """
        Check if the union tag is ``anyone_with_link``.

        :rtype: bool
        """
        return self._tag == 'anyone_with_link'

    def is_only_team(self):
        """
        Check if the union tag is ``only_team``.

        :rtype: bool
        """
        return self._tag == 'only_team'

    def is_team_and_explicitly_shared(self):
        """
        Check if the union tag is ``team_and_explicitly_shared``.

        :rtype: bool
        """
        return self._tag == 'team_and_explicitly_shared'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperMemberPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperMemberPolicy_validator = bv.Union(PaperMemberPolicy)

class PaperPublishedLinkChangePermissionDetails(bb.Struct):
    """
    Changed permissions for published doc.

    :ivar team_log.PaperPublishedLinkChangePermissionDetails.event_uuid: Event
        unique identifier.
    :ivar
        team_log.PaperPublishedLinkChangePermissionDetails.new_permission_level:
        New permission level.
    :ivar
        team_log.PaperPublishedLinkChangePermissionDetails.previous_permission_level:
        Previous permission level.
    """

    __slots__ = [
        '_event_uuid_value',
        '_new_permission_level_value',
        '_previous_permission_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 new_permission_level=None,
                 previous_permission_level=None):
        self._event_uuid_value = bb.NOT_SET
        self._new_permission_level_value = bb.NOT_SET
        self._previous_permission_level_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if new_permission_level is not None:
            self.new_permission_level = new_permission_level
        if previous_permission_level is not None:
            self.previous_permission_level = previous_permission_level

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    new_permission_level = bb.Attribute("new_permission_level")

    # Instance attribute type: str (validator is set below)
    previous_permission_level = bb.Attribute("previous_permission_level")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkChangePermissionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkChangePermissionDetails_validator = bv.Struct(PaperPublishedLinkChangePermissionDetails)

class PaperPublishedLinkChangePermissionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkChangePermissionType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkChangePermissionType_validator = bv.Struct(PaperPublishedLinkChangePermissionType)

class PaperPublishedLinkCreateDetails(bb.Struct):
    """
    Published doc.

    :ivar team_log.PaperPublishedLinkCreateDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkCreateDetails_validator = bv.Struct(PaperPublishedLinkCreateDetails)

class PaperPublishedLinkCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkCreateType_validator = bv.Struct(PaperPublishedLinkCreateType)

class PaperPublishedLinkDisabledDetails(bb.Struct):
    """
    Unpublished doc.

    :ivar team_log.PaperPublishedLinkDisabledDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkDisabledDetails_validator = bv.Struct(PaperPublishedLinkDisabledDetails)

class PaperPublishedLinkDisabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkDisabledType_validator = bv.Struct(PaperPublishedLinkDisabledType)

class PaperPublishedLinkViewDetails(bb.Struct):
    """
    Viewed published doc.

    :ivar team_log.PaperPublishedLinkViewDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkViewDetails_validator = bv.Struct(PaperPublishedLinkViewDetails)

class PaperPublishedLinkViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PaperPublishedLinkViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

PaperPublishedLinkViewType_validator = bv.Struct(PaperPublishedLinkViewType)

class ParticipantLogInfo(bb.Union):
    """
    A user or group

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar GroupLogInfo ParticipantLogInfo.group: Group details.
    :ivar UserLogInfo ParticipantLogInfo.user: A user with a Dropbox account.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def group(cls, val):
        """
        Create an instance of this class set to the ``group`` tag with value
        ``val``.

        :param GroupLogInfo val:
        :rtype: ParticipantLogInfo
        """
        return cls('group', val)

    @classmethod
    def user(cls, val):
        """
        Create an instance of this class set to the ``user`` tag with value
        ``val``.

        :param UserLogInfo val:
        :rtype: ParticipantLogInfo
        """
        return cls('user', val)

    def is_group(self):
        """
        Check if the union tag is ``group``.

        :rtype: bool
        """
        return self._tag == 'group'

    def is_user(self):
        """
        Check if the union tag is ``user``.

        :rtype: bool
        """
        return self._tag == 'user'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_group(self):
        """
        Group details.

        Only call this if :meth:`is_group` is true.

        :rtype: GroupLogInfo
        """
        if not self.is_group():
            raise AttributeError("tag 'group' not set")
        return self._value

    def get_user(self):
        """
        A user with a Dropbox account.

        Only call this if :meth:`is_user` is true.

        :rtype: UserLogInfo
        """
        if not self.is_user():
            raise AttributeError("tag 'user' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ParticipantLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ParticipantLogInfo_validator = bv.Union(ParticipantLogInfo)

class PassPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    allow = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_allow(self):
        """
        Check if the union tag is ``allow``.

        :rtype: bool
        """
        return self._tag == 'allow'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PassPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

PassPolicy_validator = bv.Union(PassPolicy)

class PasswordChangeDetails(bb.Struct):
    """
    Changed password.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordChangeDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordChangeDetails_validator = bv.Struct(PasswordChangeDetails)

class PasswordChangeType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordChangeType, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordChangeType_validator = bv.Struct(PasswordChangeType)

class PasswordResetAllDetails(bb.Struct):
    """
    Reset all team member passwords.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordResetAllDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordResetAllDetails_validator = bv.Struct(PasswordResetAllDetails)

class PasswordResetAllType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordResetAllType, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordResetAllType_validator = bv.Struct(PasswordResetAllType)

class PasswordResetDetails(bb.Struct):
    """
    Reset password.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordResetDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordResetDetails_validator = bv.Struct(PasswordResetDetails)

class PasswordResetType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordResetType, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordResetType_validator = bv.Struct(PasswordResetType)

class PasswordStrengthRequirementsChangePolicyDetails(bb.Struct):
    """
    Changed team password strength requirements.

    :ivar
        team_log.PasswordStrengthRequirementsChangePolicyDetails.previous_value:
        Old password strength policy.
    :ivar team_log.PasswordStrengthRequirementsChangePolicyDetails.new_value:
        New password strength policy.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: team_policies.PasswordStrengthPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: team_policies.PasswordStrengthPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordStrengthRequirementsChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordStrengthRequirementsChangePolicyDetails_validator = bv.Struct(PasswordStrengthRequirementsChangePolicyDetails)

class PasswordStrengthRequirementsChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PasswordStrengthRequirementsChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PasswordStrengthRequirementsChangePolicyType_validator = bv.Struct(PasswordStrengthRequirementsChangePolicyType)

class PathLogInfo(bb.Struct):
    """
    Path's details.

    :ivar team_log.PathLogInfo.contextual: Fully qualified path relative to
        event's context.
    :ivar team_log.PathLogInfo.namespace_relative: Path relative to the
        namespace containing the content.
    """

    __slots__ = [
        '_contextual_value',
        '_namespace_relative_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 namespace_relative=None,
                 contextual=None):
        self._contextual_value = bb.NOT_SET
        self._namespace_relative_value = bb.NOT_SET
        if contextual is not None:
            self.contextual = contextual
        if namespace_relative is not None:
            self.namespace_relative = namespace_relative

    # Instance attribute type: str (validator is set below)
    contextual = bb.Attribute("contextual", nullable=True)

    # Instance attribute type: NamespaceRelativePathLogInfo (validator is set below)
    namespace_relative = bb.Attribute("namespace_relative", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PathLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

PathLogInfo_validator = bv.Struct(PathLogInfo)

class PendingSecondaryEmailAddedDetails(bb.Struct):
    """
    Added pending secondary email.

    :ivar team_log.PendingSecondaryEmailAddedDetails.secondary_email: New
        pending secondary email.
    """

    __slots__ = [
        '_secondary_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_email=None):
        self._secondary_email_value = bb.NOT_SET
        if secondary_email is not None:
            self.secondary_email = secondary_email

    # Instance attribute type: str (validator is set below)
    secondary_email = bb.Attribute("secondary_email")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PendingSecondaryEmailAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PendingSecondaryEmailAddedDetails_validator = bv.Struct(PendingSecondaryEmailAddedDetails)

class PendingSecondaryEmailAddedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PendingSecondaryEmailAddedType, self)._process_custom_annotations(annotation_type, field_path, processor)

PendingSecondaryEmailAddedType_validator = bv.Struct(PendingSecondaryEmailAddedType)

class PermanentDeleteChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled ability of team members to permanently delete content.

    :ivar team_log.PermanentDeleteChangePolicyDetails.new_value: New permanent
        delete content policy.
    :ivar team_log.PermanentDeleteChangePolicyDetails.previous_value: Previous
        permanent delete content policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ContentPermanentDeletePolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ContentPermanentDeletePolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PermanentDeleteChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PermanentDeleteChangePolicyDetails_validator = bv.Struct(PermanentDeleteChangePolicyDetails)

class PermanentDeleteChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PermanentDeleteChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PermanentDeleteChangePolicyType_validator = bv.Struct(PermanentDeleteChangePolicyType)

class PlacementRestriction(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    australia_only = None
    # Attribute is overwritten below the class definition
    europe_only = None
    # Attribute is overwritten below the class definition
    japan_only = None
    # Attribute is overwritten below the class definition
    none = None
    # Attribute is overwritten below the class definition
    uk_only = None
    # Attribute is overwritten below the class definition
    us_s3_only = None
    # Attribute is overwritten below the class definition
    other = None

    def is_australia_only(self):
        """
        Check if the union tag is ``australia_only``.

        :rtype: bool
        """
        return self._tag == 'australia_only'

    def is_europe_only(self):
        """
        Check if the union tag is ``europe_only``.

        :rtype: bool
        """
        return self._tag == 'europe_only'

    def is_japan_only(self):
        """
        Check if the union tag is ``japan_only``.

        :rtype: bool
        """
        return self._tag == 'japan_only'

    def is_none(self):
        """
        Check if the union tag is ``none``.

        :rtype: bool
        """
        return self._tag == 'none'

    def is_uk_only(self):
        """
        Check if the union tag is ``uk_only``.

        :rtype: bool
        """
        return self._tag == 'uk_only'

    def is_us_s3_only(self):
        """
        Check if the union tag is ``us_s3_only``.

        :rtype: bool
        """
        return self._tag == 'us_s3_only'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PlacementRestriction, self)._process_custom_annotations(annotation_type, field_path, processor)

PlacementRestriction_validator = bv.Union(PlacementRestriction)

class PolicyType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disposition = None
    # Attribute is overwritten below the class definition
    retention = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disposition(self):
        """
        Check if the union tag is ``disposition``.

        :rtype: bool
        """
        return self._tag == 'disposition'

    def is_retention(self):
        """
        Check if the union tag is ``retention``.

        :rtype: bool
        """
        return self._tag == 'retention'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

PolicyType_validator = bv.Union(PolicyType)

class PrimaryTeamRequestAcceptedDetails(bb.Struct):
    """
    Team merge request acceptance details shown to the primary team

    :ivar team_log.PrimaryTeamRequestAcceptedDetails.secondary_team: The
        secondary team name.
    :ivar team_log.PrimaryTeamRequestAcceptedDetails.sent_by: The name of the
        secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PrimaryTeamRequestAcceptedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PrimaryTeamRequestAcceptedDetails_validator = bv.Struct(PrimaryTeamRequestAcceptedDetails)

class PrimaryTeamRequestCanceledDetails(bb.Struct):
    """
    Team merge request cancellation details shown to the primary team

    :ivar team_log.PrimaryTeamRequestCanceledDetails.secondary_team: The
        secondary team name.
    :ivar team_log.PrimaryTeamRequestCanceledDetails.sent_by: The name of the
        secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PrimaryTeamRequestCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PrimaryTeamRequestCanceledDetails_validator = bv.Struct(PrimaryTeamRequestCanceledDetails)

class PrimaryTeamRequestExpiredDetails(bb.Struct):
    """
    Team merge request expiration details shown to the primary team

    :ivar team_log.PrimaryTeamRequestExpiredDetails.secondary_team: The
        secondary team name.
    :ivar team_log.PrimaryTeamRequestExpiredDetails.sent_by: The name of the
        secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PrimaryTeamRequestExpiredDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PrimaryTeamRequestExpiredDetails_validator = bv.Struct(PrimaryTeamRequestExpiredDetails)

class PrimaryTeamRequestReminderDetails(bb.Struct):
    """
    Team merge request reminder details shown to the primary team

    :ivar team_log.PrimaryTeamRequestReminderDetails.secondary_team: The
        secondary team name.
    :ivar team_log.PrimaryTeamRequestReminderDetails.sent_to: The name of the
        primary team admin the request was sent to.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_to=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_to_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(PrimaryTeamRequestReminderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

PrimaryTeamRequestReminderDetails_validator = bv.Struct(PrimaryTeamRequestReminderDetails)

class QuickActionType(bb.Union):
    """
    Quick action type.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    delete_shared_link = None
    # Attribute is overwritten below the class definition
    reset_password = None
    # Attribute is overwritten below the class definition
    restore_file_or_folder = None
    # Attribute is overwritten below the class definition
    unlink_app = None
    # Attribute is overwritten below the class definition
    unlink_device = None
    # Attribute is overwritten below the class definition
    unlink_session = None
    # Attribute is overwritten below the class definition
    other = None

    def is_delete_shared_link(self):
        """
        Check if the union tag is ``delete_shared_link``.

        :rtype: bool
        """
        return self._tag == 'delete_shared_link'

    def is_reset_password(self):
        """
        Check if the union tag is ``reset_password``.

        :rtype: bool
        """
        return self._tag == 'reset_password'

    def is_restore_file_or_folder(self):
        """
        Check if the union tag is ``restore_file_or_folder``.

        :rtype: bool
        """
        return self._tag == 'restore_file_or_folder'

    def is_unlink_app(self):
        """
        Check if the union tag is ``unlink_app``.

        :rtype: bool
        """
        return self._tag == 'unlink_app'

    def is_unlink_device(self):
        """
        Check if the union tag is ``unlink_device``.

        :rtype: bool
        """
        return self._tag == 'unlink_device'

    def is_unlink_session(self):
        """
        Check if the union tag is ``unlink_session``.

        :rtype: bool
        """
        return self._tag == 'unlink_session'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(QuickActionType, self)._process_custom_annotations(annotation_type, field_path, processor)

QuickActionType_validator = bv.Union(QuickActionType)

class RecipientsConfiguration(bb.Struct):
    """
    Recipients Configuration

    :ivar team_log.RecipientsConfiguration.recipient_setting_type: Recipients
        setting type.
    :ivar team_log.RecipientsConfiguration.emails: A list of user emails to
        notify.
    :ivar team_log.RecipientsConfiguration.groups: A list of groups to notify.
    """

    __slots__ = [
        '_recipient_setting_type_value',
        '_emails_value',
        '_groups_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 recipient_setting_type=None,
                 emails=None,
                 groups=None):
        self._recipient_setting_type_value = bb.NOT_SET
        self._emails_value = bb.NOT_SET
        self._groups_value = bb.NOT_SET
        if recipient_setting_type is not None:
            self.recipient_setting_type = recipient_setting_type
        if emails is not None:
            self.emails = emails
        if groups is not None:
            self.groups = groups

    # Instance attribute type: AlertRecipientsSettingType (validator is set below)
    recipient_setting_type = bb.Attribute("recipient_setting_type", nullable=True, user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    emails = bb.Attribute("emails", nullable=True)

    # Instance attribute type: list of [str] (validator is set below)
    groups = bb.Attribute("groups", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RecipientsConfiguration, self)._process_custom_annotations(annotation_type, field_path, processor)

RecipientsConfiguration_validator = bv.Struct(RecipientsConfiguration)

class RelocateAssetReferencesLogInfo(bb.Struct):
    """
    Provides the indices of the source asset and the destination asset for a
    relocate action.

    :ivar team_log.RelocateAssetReferencesLogInfo.src_asset_index: Source asset
        position in the Assets list.
    :ivar team_log.RelocateAssetReferencesLogInfo.dest_asset_index: Destination
        asset position in the Assets list.
    """

    __slots__ = [
        '_src_asset_index_value',
        '_dest_asset_index_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 src_asset_index=None,
                 dest_asset_index=None):
        self._src_asset_index_value = bb.NOT_SET
        self._dest_asset_index_value = bb.NOT_SET
        if src_asset_index is not None:
            self.src_asset_index = src_asset_index
        if dest_asset_index is not None:
            self.dest_asset_index = dest_asset_index

    # Instance attribute type: int (validator is set below)
    src_asset_index = bb.Attribute("src_asset_index")

    # Instance attribute type: int (validator is set below)
    dest_asset_index = bb.Attribute("dest_asset_index")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RelocateAssetReferencesLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

RelocateAssetReferencesLogInfo_validator = bv.Struct(RelocateAssetReferencesLogInfo)

class ResellerLogInfo(bb.Struct):
    """
    Reseller information.

    :ivar team_log.ResellerLogInfo.reseller_name: Reseller name.
    :ivar team_log.ResellerLogInfo.reseller_email: Reseller email.
    """

    __slots__ = [
        '_reseller_name_value',
        '_reseller_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 reseller_name=None,
                 reseller_email=None):
        self._reseller_name_value = bb.NOT_SET
        self._reseller_email_value = bb.NOT_SET
        if reseller_name is not None:
            self.reseller_name = reseller_name
        if reseller_email is not None:
            self.reseller_email = reseller_email

    # Instance attribute type: str (validator is set below)
    reseller_name = bb.Attribute("reseller_name")

    # Instance attribute type: str (validator is set below)
    reseller_email = bb.Attribute("reseller_email")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerLogInfo_validator = bv.Struct(ResellerLogInfo)

class ResellerRole(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    not_reseller = None
    # Attribute is overwritten below the class definition
    reseller_admin = None
    # Attribute is overwritten below the class definition
    other = None

    def is_not_reseller(self):
        """
        Check if the union tag is ``not_reseller``.

        :rtype: bool
        """
        return self._tag == 'not_reseller'

    def is_reseller_admin(self):
        """
        Check if the union tag is ``reseller_admin``.

        :rtype: bool
        """
        return self._tag == 'reseller_admin'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerRole, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerRole_validator = bv.Union(ResellerRole)

class ResellerSupportChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled reseller support.

    :ivar team_log.ResellerSupportChangePolicyDetails.new_value: New Reseller
        support policy.
    :ivar team_log.ResellerSupportChangePolicyDetails.previous_value: Previous
        Reseller support policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ResellerSupportPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ResellerSupportPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportChangePolicyDetails_validator = bv.Struct(ResellerSupportChangePolicyDetails)

class ResellerSupportChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportChangePolicyType_validator = bv.Struct(ResellerSupportChangePolicyType)

class ResellerSupportPolicy(bb.Union):
    """
    Policy for controlling if reseller can access the admin console as
    administrator

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportPolicy_validator = bv.Union(ResellerSupportPolicy)

class ResellerSupportSessionEndDetails(bb.Struct):
    """
    Ended reseller support session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportSessionEndDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportSessionEndDetails_validator = bv.Struct(ResellerSupportSessionEndDetails)

class ResellerSupportSessionEndType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportSessionEndType, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportSessionEndType_validator = bv.Struct(ResellerSupportSessionEndType)

class ResellerSupportSessionStartDetails(bb.Struct):
    """
    Started reseller support session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportSessionStartDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportSessionStartDetails_validator = bv.Struct(ResellerSupportSessionStartDetails)

class ResellerSupportSessionStartType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ResellerSupportSessionStartType, self)._process_custom_annotations(annotation_type, field_path, processor)

ResellerSupportSessionStartType_validator = bv.Struct(ResellerSupportSessionStartType)

class RewindFolderDetails(bb.Struct):
    """
    Rewound a folder.

    :ivar team_log.RewindFolderDetails.rewind_folder_target_ts_ms: Folder was
        Rewound to this date.
    """

    __slots__ = [
        '_rewind_folder_target_ts_ms_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 rewind_folder_target_ts_ms=None):
        self._rewind_folder_target_ts_ms_value = bb.NOT_SET
        if rewind_folder_target_ts_ms is not None:
            self.rewind_folder_target_ts_ms = rewind_folder_target_ts_ms

    # Instance attribute type: datetime.datetime (validator is set below)
    rewind_folder_target_ts_ms = bb.Attribute("rewind_folder_target_ts_ms")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RewindFolderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

RewindFolderDetails_validator = bv.Struct(RewindFolderDetails)

class RewindFolderType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RewindFolderType, self)._process_custom_annotations(annotation_type, field_path, processor)

RewindFolderType_validator = bv.Struct(RewindFolderType)

class RewindPolicy(bb.Union):
    """
    Policy for controlling whether team members can rewind

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    admins_only = None
    # Attribute is overwritten below the class definition
    everyone = None
    # Attribute is overwritten below the class definition
    other = None

    def is_admins_only(self):
        """
        Check if the union tag is ``admins_only``.

        :rtype: bool
        """
        return self._tag == 'admins_only'

    def is_everyone(self):
        """
        Check if the union tag is ``everyone``.

        :rtype: bool
        """
        return self._tag == 'everyone'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RewindPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

RewindPolicy_validator = bv.Union(RewindPolicy)

class RewindPolicyChangedDetails(bb.Struct):
    """
    Changed Rewind policy for team.

    :ivar team_log.RewindPolicyChangedDetails.new_value: New Dropbox Rewind
        policy.
    :ivar team_log.RewindPolicyChangedDetails.previous_value: Previous Dropbox
        Rewind policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: RewindPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: RewindPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RewindPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

RewindPolicyChangedDetails_validator = bv.Struct(RewindPolicyChangedDetails)

class RewindPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(RewindPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

RewindPolicyChangedType_validator = bv.Struct(RewindPolicyChangedType)

class SecondaryEmailDeletedDetails(bb.Struct):
    """
    Deleted secondary email.

    :ivar team_log.SecondaryEmailDeletedDetails.secondary_email: Deleted
        secondary email.
    """

    __slots__ = [
        '_secondary_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_email=None):
        self._secondary_email_value = bb.NOT_SET
        if secondary_email is not None:
            self.secondary_email = secondary_email

    # Instance attribute type: str (validator is set below)
    secondary_email = bb.Attribute("secondary_email")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryEmailDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryEmailDeletedDetails_validator = bv.Struct(SecondaryEmailDeletedDetails)

class SecondaryEmailDeletedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryEmailDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryEmailDeletedType_validator = bv.Struct(SecondaryEmailDeletedType)

class SecondaryEmailVerifiedDetails(bb.Struct):
    """
    Verified secondary email.

    :ivar team_log.SecondaryEmailVerifiedDetails.secondary_email: Verified
        secondary email.
    """

    __slots__ = [
        '_secondary_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_email=None):
        self._secondary_email_value = bb.NOT_SET
        if secondary_email is not None:
            self.secondary_email = secondary_email

    # Instance attribute type: str (validator is set below)
    secondary_email = bb.Attribute("secondary_email")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryEmailVerifiedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryEmailVerifiedDetails_validator = bv.Struct(SecondaryEmailVerifiedDetails)

class SecondaryEmailVerifiedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryEmailVerifiedType, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryEmailVerifiedType_validator = bv.Struct(SecondaryEmailVerifiedType)

class SecondaryMailsPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryMailsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryMailsPolicy_validator = bv.Union(SecondaryMailsPolicy)

class SecondaryMailsPolicyChangedDetails(bb.Struct):
    """
    Secondary mails policy changed.

    :ivar team_log.SecondaryMailsPolicyChangedDetails.previous_value: Previous
        secondary mails policy.
    :ivar team_log.SecondaryMailsPolicyChangedDetails.new_value: New secondary
        mails policy.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: SecondaryMailsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: SecondaryMailsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryMailsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryMailsPolicyChangedDetails_validator = bv.Struct(SecondaryMailsPolicyChangedDetails)

class SecondaryMailsPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryMailsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryMailsPolicyChangedType_validator = bv.Struct(SecondaryMailsPolicyChangedType)

class SecondaryTeamRequestAcceptedDetails(bb.Struct):
    """
    Team merge request acceptance details shown to the secondary team

    :ivar team_log.SecondaryTeamRequestAcceptedDetails.primary_team: The primary
        team name.
    :ivar team_log.SecondaryTeamRequestAcceptedDetails.sent_by: The name of the
        secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_primary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 primary_team=None,
                 sent_by=None):
        self._primary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if primary_team is not None:
            self.primary_team = primary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    primary_team = bb.Attribute("primary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryTeamRequestAcceptedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryTeamRequestAcceptedDetails_validator = bv.Struct(SecondaryTeamRequestAcceptedDetails)

class SecondaryTeamRequestCanceledDetails(bb.Struct):
    """
    Team merge request cancellation details shown to the secondary team

    :ivar team_log.SecondaryTeamRequestCanceledDetails.sent_to: The email of the
        primary team admin that the request was sent to.
    :ivar team_log.SecondaryTeamRequestCanceledDetails.sent_by: The name of the
        secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_sent_to_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None,
                 sent_by=None):
        self._sent_to_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryTeamRequestCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryTeamRequestCanceledDetails_validator = bv.Struct(SecondaryTeamRequestCanceledDetails)

class SecondaryTeamRequestExpiredDetails(bb.Struct):
    """
    Team merge request expiration details shown to the secondary team

    :ivar team_log.SecondaryTeamRequestExpiredDetails.sent_to: The email of the
        primary team admin the request was sent to.
    """

    __slots__ = [
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None):
        self._sent_to_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryTeamRequestExpiredDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryTeamRequestExpiredDetails_validator = bv.Struct(SecondaryTeamRequestExpiredDetails)

class SecondaryTeamRequestReminderDetails(bb.Struct):
    """
    Team merge request reminder details shown to the secondary team

    :ivar team_log.SecondaryTeamRequestReminderDetails.sent_to: The email of the
        primary team admin the request was sent to.
    """

    __slots__ = [
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None):
        self._sent_to_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SecondaryTeamRequestReminderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SecondaryTeamRequestReminderDetails_validator = bv.Struct(SecondaryTeamRequestReminderDetails)

class SendForSignaturePolicy(bb.Union):
    """
    Policy for controlling team access to send for signature feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SendForSignaturePolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SendForSignaturePolicy_validator = bv.Union(SendForSignaturePolicy)

class SendForSignaturePolicyChangedDetails(bb.Struct):
    """
    Changed send for signature policy for team.

    :ivar team_log.SendForSignaturePolicyChangedDetails.new_value: New send for
        signature policy.
    :ivar team_log.SendForSignaturePolicyChangedDetails.previous_value: Previous
        send for signature policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: SendForSignaturePolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: SendForSignaturePolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SendForSignaturePolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SendForSignaturePolicyChangedDetails_validator = bv.Struct(SendForSignaturePolicyChangedDetails)

class SendForSignaturePolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SendForSignaturePolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

SendForSignaturePolicyChangedType_validator = bv.Struct(SendForSignaturePolicyChangedType)

class SfAddGroupDetails(bb.Struct):
    """
    Added team to shared folder.

    :ivar team_log.SfAddGroupDetails.target_asset_index: Target asset position
        in the Assets list.
    :ivar team_log.SfAddGroupDetails.original_folder_name: Original shared
        folder name.
    :ivar team_log.SfAddGroupDetails.sharing_permission: Sharing permission.
    :ivar team_log.SfAddGroupDetails.team_name: Team name.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_sharing_permission_value',
        '_team_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 team_name=None,
                 sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._sharing_permission_value = bb.NOT_SET
        self._team_name_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if sharing_permission is not None:
            self.sharing_permission = sharing_permission
        if team_name is not None:
            self.team_name = team_name

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    sharing_permission = bb.Attribute("sharing_permission", nullable=True)

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfAddGroupDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfAddGroupDetails_validator = bv.Struct(SfAddGroupDetails)

class SfAddGroupType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfAddGroupType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfAddGroupType_validator = bv.Struct(SfAddGroupType)

class SfAllowNonMembersToViewSharedLinksDetails(bb.Struct):
    """
    Allowed non-collaborators to view links to files in shared folder.

    :ivar team_log.SfAllowNonMembersToViewSharedLinksDetails.target_asset_index:
        Target asset position in the Assets list.
    :ivar
        team_log.SfAllowNonMembersToViewSharedLinksDetails.original_folder_name:
        Original shared folder name.
    :ivar team_log.SfAllowNonMembersToViewSharedLinksDetails.shared_folder_type:
        Shared folder type.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_shared_folder_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 shared_folder_type=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._shared_folder_type_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if shared_folder_type is not None:
            self.shared_folder_type = shared_folder_type

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    shared_folder_type = bb.Attribute("shared_folder_type", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfAllowNonMembersToViewSharedLinksDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfAllowNonMembersToViewSharedLinksDetails_validator = bv.Struct(SfAllowNonMembersToViewSharedLinksDetails)

class SfAllowNonMembersToViewSharedLinksType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfAllowNonMembersToViewSharedLinksType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfAllowNonMembersToViewSharedLinksType_validator = bv.Struct(SfAllowNonMembersToViewSharedLinksType)

class SfExternalInviteWarnDetails(bb.Struct):
    """
    Set team members to see warning before sharing folders outside team.

    :ivar team_log.SfExternalInviteWarnDetails.target_asset_index: Target asset
        position in the Assets list.
    :ivar team_log.SfExternalInviteWarnDetails.original_folder_name: Original
        shared folder name.
    :ivar team_log.SfExternalInviteWarnDetails.new_sharing_permission: New
        sharing permission.
    :ivar team_log.SfExternalInviteWarnDetails.previous_sharing_permission:
        Previous sharing permission.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_new_sharing_permission_value',
        '_previous_sharing_permission_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 new_sharing_permission=None,
                 previous_sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._new_sharing_permission_value = bb.NOT_SET
        self._previous_sharing_permission_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if new_sharing_permission is not None:
            self.new_sharing_permission = new_sharing_permission
        if previous_sharing_permission is not None:
            self.previous_sharing_permission = previous_sharing_permission

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    new_sharing_permission = bb.Attribute("new_sharing_permission", nullable=True)

    # Instance attribute type: str (validator is set below)
    previous_sharing_permission = bb.Attribute("previous_sharing_permission", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfExternalInviteWarnDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfExternalInviteWarnDetails_validator = bv.Struct(SfExternalInviteWarnDetails)

class SfExternalInviteWarnType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfExternalInviteWarnType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfExternalInviteWarnType_validator = bv.Struct(SfExternalInviteWarnType)

class SfFbInviteChangeRoleDetails(bb.Struct):
    """
    Changed Facebook user's role in shared folder.

    :ivar team_log.SfFbInviteChangeRoleDetails.target_asset_index: Target asset
        position in the Assets list.
    :ivar team_log.SfFbInviteChangeRoleDetails.original_folder_name: Original
        shared folder name.
    :ivar team_log.SfFbInviteChangeRoleDetails.previous_sharing_permission:
        Previous sharing permission.
    :ivar team_log.SfFbInviteChangeRoleDetails.new_sharing_permission: New
        sharing permission.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_previous_sharing_permission_value',
        '_new_sharing_permission_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 previous_sharing_permission=None,
                 new_sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._previous_sharing_permission_value = bb.NOT_SET
        self._new_sharing_permission_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if previous_sharing_permission is not None:
            self.previous_sharing_permission = previous_sharing_permission
        if new_sharing_permission is not None:
            self.new_sharing_permission = new_sharing_permission

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    previous_sharing_permission = bb.Attribute("previous_sharing_permission", nullable=True)

    # Instance attribute type: str (validator is set below)
    new_sharing_permission = bb.Attribute("new_sharing_permission", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfFbInviteChangeRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfFbInviteChangeRoleDetails_validator = bv.Struct(SfFbInviteChangeRoleDetails)

class SfFbInviteChangeRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfFbInviteChangeRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfFbInviteChangeRoleType_validator = bv.Struct(SfFbInviteChangeRoleType)

class SfFbInviteDetails(bb.Struct):
    """
    Invited Facebook users to shared folder.

    :ivar team_log.SfFbInviteDetails.target_asset_index: Target asset position
        in the Assets list.
    :ivar team_log.SfFbInviteDetails.original_folder_name: Original shared
        folder name.
    :ivar team_log.SfFbInviteDetails.sharing_permission: Sharing permission.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_sharing_permission_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._sharing_permission_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if sharing_permission is not None:
            self.sharing_permission = sharing_permission

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    sharing_permission = bb.Attribute("sharing_permission", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfFbInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfFbInviteDetails_validator = bv.Struct(SfFbInviteDetails)

class SfFbInviteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfFbInviteType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfFbInviteType_validator = bv.Struct(SfFbInviteType)

class SfFbUninviteDetails(bb.Struct):
    """
    Uninvited Facebook user from shared folder.

    :ivar team_log.SfFbUninviteDetails.target_asset_index: Target asset position
        in the Assets list.
    :ivar team_log.SfFbUninviteDetails.original_folder_name: Original shared
        folder name.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfFbUninviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfFbUninviteDetails_validator = bv.Struct(SfFbUninviteDetails)

class SfFbUninviteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfFbUninviteType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfFbUninviteType_validator = bv.Struct(SfFbUninviteType)

class SfInviteGroupDetails(bb.Struct):
    """
    Invited group to shared folder.

    :ivar team_log.SfInviteGroupDetails.target_asset_index: Target asset
        position in the Assets list.
    """

    __slots__ = [
        '_target_asset_index_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None):
        self._target_asset_index_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfInviteGroupDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfInviteGroupDetails_validator = bv.Struct(SfInviteGroupDetails)

class SfInviteGroupType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfInviteGroupType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfInviteGroupType_validator = bv.Struct(SfInviteGroupType)

class SfTeamGrantAccessDetails(bb.Struct):
    """
    Granted access to shared folder.

    :ivar team_log.SfTeamGrantAccessDetails.target_asset_index: Target asset
        position in the Assets list.
    :ivar team_log.SfTeamGrantAccessDetails.original_folder_name: Original
        shared folder name.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamGrantAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamGrantAccessDetails_validator = bv.Struct(SfTeamGrantAccessDetails)

class SfTeamGrantAccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamGrantAccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamGrantAccessType_validator = bv.Struct(SfTeamGrantAccessType)

class SfTeamInviteChangeRoleDetails(bb.Struct):
    """
    Changed team member's role in shared folder.

    :ivar team_log.SfTeamInviteChangeRoleDetails.target_asset_index: Target
        asset position in the Assets list.
    :ivar team_log.SfTeamInviteChangeRoleDetails.original_folder_name: Original
        shared folder name.
    :ivar team_log.SfTeamInviteChangeRoleDetails.new_sharing_permission: New
        sharing permission.
    :ivar team_log.SfTeamInviteChangeRoleDetails.previous_sharing_permission:
        Previous sharing permission.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_new_sharing_permission_value',
        '_previous_sharing_permission_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 new_sharing_permission=None,
                 previous_sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._new_sharing_permission_value = bb.NOT_SET
        self._previous_sharing_permission_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if new_sharing_permission is not None:
            self.new_sharing_permission = new_sharing_permission
        if previous_sharing_permission is not None:
            self.previous_sharing_permission = previous_sharing_permission

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    new_sharing_permission = bb.Attribute("new_sharing_permission", nullable=True)

    # Instance attribute type: str (validator is set below)
    previous_sharing_permission = bb.Attribute("previous_sharing_permission", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamInviteChangeRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamInviteChangeRoleDetails_validator = bv.Struct(SfTeamInviteChangeRoleDetails)

class SfTeamInviteChangeRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamInviteChangeRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamInviteChangeRoleType_validator = bv.Struct(SfTeamInviteChangeRoleType)

class SfTeamInviteDetails(bb.Struct):
    """
    Invited team members to shared folder.

    :ivar team_log.SfTeamInviteDetails.target_asset_index: Target asset position
        in the Assets list.
    :ivar team_log.SfTeamInviteDetails.original_folder_name: Original shared
        folder name.
    :ivar team_log.SfTeamInviteDetails.sharing_permission: Sharing permission.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_sharing_permission_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._sharing_permission_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if sharing_permission is not None:
            self.sharing_permission = sharing_permission

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    sharing_permission = bb.Attribute("sharing_permission", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamInviteDetails_validator = bv.Struct(SfTeamInviteDetails)

class SfTeamInviteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamInviteType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamInviteType_validator = bv.Struct(SfTeamInviteType)

class SfTeamJoinDetails(bb.Struct):
    """
    Joined team member's shared folder.

    :ivar team_log.SfTeamJoinDetails.target_asset_index: Target asset position
        in the Assets list.
    :ivar team_log.SfTeamJoinDetails.original_folder_name: Original shared
        folder name.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamJoinDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamJoinDetails_validator = bv.Struct(SfTeamJoinDetails)

class SfTeamJoinFromOobLinkDetails(bb.Struct):
    """
    Joined team member's shared folder from link.

    :ivar team_log.SfTeamJoinFromOobLinkDetails.target_asset_index: Target asset
        position in the Assets list.
    :ivar team_log.SfTeamJoinFromOobLinkDetails.original_folder_name: Original
        shared folder name.
    :ivar team_log.SfTeamJoinFromOobLinkDetails.token_key: Shared link token
        key.
    :ivar team_log.SfTeamJoinFromOobLinkDetails.sharing_permission: Sharing
        permission.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
        '_token_key_value',
        '_sharing_permission_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None,
                 token_key=None,
                 sharing_permission=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        self._token_key_value = bb.NOT_SET
        self._sharing_permission_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name
        if token_key is not None:
            self.token_key = token_key
        if sharing_permission is not None:
            self.sharing_permission = sharing_permission

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    # Instance attribute type: str (validator is set below)
    token_key = bb.Attribute("token_key", nullable=True)

    # Instance attribute type: str (validator is set below)
    sharing_permission = bb.Attribute("sharing_permission", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamJoinFromOobLinkDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamJoinFromOobLinkDetails_validator = bv.Struct(SfTeamJoinFromOobLinkDetails)

class SfTeamJoinFromOobLinkType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamJoinFromOobLinkType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamJoinFromOobLinkType_validator = bv.Struct(SfTeamJoinFromOobLinkType)

class SfTeamJoinType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamJoinType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamJoinType_validator = bv.Struct(SfTeamJoinType)

class SfTeamUninviteDetails(bb.Struct):
    """
    Unshared folder with team member.

    :ivar team_log.SfTeamUninviteDetails.target_asset_index: Target asset
        position in the Assets list.
    :ivar team_log.SfTeamUninviteDetails.original_folder_name: Original shared
        folder name.
    """

    __slots__ = [
        '_target_asset_index_value',
        '_original_folder_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None,
                 original_folder_name=None):
        self._target_asset_index_value = bb.NOT_SET
        self._original_folder_name_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index
        if original_folder_name is not None:
            self.original_folder_name = original_folder_name

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    # Instance attribute type: str (validator is set below)
    original_folder_name = bb.Attribute("original_folder_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamUninviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamUninviteDetails_validator = bv.Struct(SfTeamUninviteDetails)

class SfTeamUninviteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SfTeamUninviteType, self)._process_custom_annotations(annotation_type, field_path, processor)

SfTeamUninviteType_validator = bv.Struct(SfTeamUninviteType)

class SharedContentAddInviteesDetails(bb.Struct):
    """
    Invited user to Dropbox and added them to shared file/folder.

    :ivar team_log.SharedContentAddInviteesDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedContentAddInviteesDetails.invitees: A list of invitees.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_invitees_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 invitees=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._invitees_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if invitees is not None:
            self.invitees = invitees

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    invitees = bb.Attribute("invitees")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddInviteesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddInviteesDetails_validator = bv.Struct(SharedContentAddInviteesDetails)

class SharedContentAddInviteesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddInviteesType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddInviteesType_validator = bv.Struct(SharedContentAddInviteesType)

class SharedContentAddLinkExpiryDetails(bb.Struct):
    """
    Added expiration date to link for shared file/folder.

    :ivar team_log.SharedContentAddLinkExpiryDetails.new_value: New shared
        content link expiration date. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: datetime.datetime (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddLinkExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddLinkExpiryDetails_validator = bv.Struct(SharedContentAddLinkExpiryDetails)

class SharedContentAddLinkExpiryType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddLinkExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddLinkExpiryType_validator = bv.Struct(SharedContentAddLinkExpiryType)

class SharedContentAddLinkPasswordDetails(bb.Struct):
    """
    Added password to link for shared file/folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddLinkPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddLinkPasswordDetails_validator = bv.Struct(SharedContentAddLinkPasswordDetails)

class SharedContentAddLinkPasswordType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddLinkPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddLinkPasswordType_validator = bv.Struct(SharedContentAddLinkPasswordType)

class SharedContentAddMemberDetails(bb.Struct):
    """
    Added users and/or groups to shared file/folder.

    :ivar team_log.SharedContentAddMemberDetails.shared_content_access_level:
        Shared content access level.
    """

    __slots__ = [
        '_shared_content_access_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None):
        self._shared_content_access_level_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddMemberDetails_validator = bv.Struct(SharedContentAddMemberDetails)

class SharedContentAddMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentAddMemberType_validator = bv.Struct(SharedContentAddMemberType)

class SharedContentChangeDownloadsPolicyDetails(bb.Struct):
    """
    Changed whether members can download shared file/folder.

    :ivar team_log.SharedContentChangeDownloadsPolicyDetails.new_value: New
        downloads policy.
    :ivar team_log.SharedContentChangeDownloadsPolicyDetails.previous_value:
        Previous downloads policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: DownloadPolicyType (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: DownloadPolicyType (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeDownloadsPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeDownloadsPolicyDetails_validator = bv.Struct(SharedContentChangeDownloadsPolicyDetails)

class SharedContentChangeDownloadsPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeDownloadsPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeDownloadsPolicyType_validator = bv.Struct(SharedContentChangeDownloadsPolicyType)

class SharedContentChangeInviteeRoleDetails(bb.Struct):
    """
    Changed access type of invitee to shared file/folder before invite was
    accepted.

    :ivar team_log.SharedContentChangeInviteeRoleDetails.previous_access_level:
        Previous access level. Might be missing due to historical data gap.
    :ivar team_log.SharedContentChangeInviteeRoleDetails.new_access_level: New
        access level.
    :ivar team_log.SharedContentChangeInviteeRoleDetails.invitee: The invitee
        whose role was changed.
    """

    __slots__ = [
        '_previous_access_level_value',
        '_new_access_level_value',
        '_invitee_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_access_level=None,
                 invitee=None,
                 previous_access_level=None):
        self._previous_access_level_value = bb.NOT_SET
        self._new_access_level_value = bb.NOT_SET
        self._invitee_value = bb.NOT_SET
        if previous_access_level is not None:
            self.previous_access_level = previous_access_level
        if new_access_level is not None:
            self.new_access_level = new_access_level
        if invitee is not None:
            self.invitee = invitee

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    previous_access_level = bb.Attribute("previous_access_level", nullable=True, user_defined=True)

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    new_access_level = bb.Attribute("new_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    invitee = bb.Attribute("invitee")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeInviteeRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeInviteeRoleDetails_validator = bv.Struct(SharedContentChangeInviteeRoleDetails)

class SharedContentChangeInviteeRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeInviteeRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeInviteeRoleType_validator = bv.Struct(SharedContentChangeInviteeRoleType)

class SharedContentChangeLinkAudienceDetails(bb.Struct):
    """
    Changed link audience of shared file/folder.

    :ivar team_log.SharedContentChangeLinkAudienceDetails.new_value: New link
        audience value.
    :ivar team_log.SharedContentChangeLinkAudienceDetails.previous_value:
        Previous link audience value.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.LinkAudience (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: sharing.LinkAudience (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeLinkAudienceDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeLinkAudienceDetails_validator = bv.Struct(SharedContentChangeLinkAudienceDetails)

class SharedContentChangeLinkAudienceType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeLinkAudienceType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeLinkAudienceType_validator = bv.Struct(SharedContentChangeLinkAudienceType)

class SharedContentChangeLinkExpiryDetails(bb.Struct):
    """
    Changed link expiration of shared file/folder.

    :ivar team_log.SharedContentChangeLinkExpiryDetails.new_value: New shared
        content link expiration date. Might be missing due to historical data
        gap.
    :ivar team_log.SharedContentChangeLinkExpiryDetails.previous_value: Previous
        shared content link expiration date. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: datetime.datetime (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeLinkExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeLinkExpiryDetails_validator = bv.Struct(SharedContentChangeLinkExpiryDetails)

class SharedContentChangeLinkExpiryType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeLinkExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeLinkExpiryType_validator = bv.Struct(SharedContentChangeLinkExpiryType)

class SharedContentChangeLinkPasswordDetails(bb.Struct):
    """
    Changed link password of shared file/folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeLinkPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeLinkPasswordDetails_validator = bv.Struct(SharedContentChangeLinkPasswordDetails)

class SharedContentChangeLinkPasswordType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeLinkPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeLinkPasswordType_validator = bv.Struct(SharedContentChangeLinkPasswordType)

class SharedContentChangeMemberRoleDetails(bb.Struct):
    """
    Changed access type of shared file/folder member.

    :ivar team_log.SharedContentChangeMemberRoleDetails.previous_access_level:
        Previous access level. Might be missing due to historical data gap.
    :ivar team_log.SharedContentChangeMemberRoleDetails.new_access_level: New
        access level.
    """

    __slots__ = [
        '_previous_access_level_value',
        '_new_access_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_access_level=None,
                 previous_access_level=None):
        self._previous_access_level_value = bb.NOT_SET
        self._new_access_level_value = bb.NOT_SET
        if previous_access_level is not None:
            self.previous_access_level = previous_access_level
        if new_access_level is not None:
            self.new_access_level = new_access_level

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    previous_access_level = bb.Attribute("previous_access_level", nullable=True, user_defined=True)

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    new_access_level = bb.Attribute("new_access_level", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeMemberRoleDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeMemberRoleDetails_validator = bv.Struct(SharedContentChangeMemberRoleDetails)

class SharedContentChangeMemberRoleType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeMemberRoleType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeMemberRoleType_validator = bv.Struct(SharedContentChangeMemberRoleType)

class SharedContentChangeViewerInfoPolicyDetails(bb.Struct):
    """
    Changed whether members can see who viewed shared file/folder.

    :ivar team_log.SharedContentChangeViewerInfoPolicyDetails.new_value: New
        viewer info policy.
    :ivar team_log.SharedContentChangeViewerInfoPolicyDetails.previous_value:
        Previous view info policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.ViewerInfoPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: sharing.ViewerInfoPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeViewerInfoPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeViewerInfoPolicyDetails_validator = bv.Struct(SharedContentChangeViewerInfoPolicyDetails)

class SharedContentChangeViewerInfoPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentChangeViewerInfoPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentChangeViewerInfoPolicyType_validator = bv.Struct(SharedContentChangeViewerInfoPolicyType)

class SharedContentClaimInvitationDetails(bb.Struct):
    """
    Acquired membership of shared file/folder by accepting invite.

    :ivar team_log.SharedContentClaimInvitationDetails.shared_content_link:
        Shared content link.
    """

    __slots__ = [
        '_shared_content_link_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_content_link=None):
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentClaimInvitationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentClaimInvitationDetails_validator = bv.Struct(SharedContentClaimInvitationDetails)

class SharedContentClaimInvitationType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentClaimInvitationType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentClaimInvitationType_validator = bv.Struct(SharedContentClaimInvitationType)

class SharedContentCopyDetails(bb.Struct):
    """
    Copied shared file/folder to own Dropbox.

    :ivar team_log.SharedContentCopyDetails.shared_content_link: Shared content
        link.
    :ivar team_log.SharedContentCopyDetails.shared_content_owner: The shared
        content owner.
    :ivar team_log.SharedContentCopyDetails.shared_content_access_level: Shared
        content access level.
    :ivar team_log.SharedContentCopyDetails.destination_path: The path where the
        member saved the content.
    """

    __slots__ = [
        '_shared_content_link_value',
        '_shared_content_owner_value',
        '_shared_content_access_level_value',
        '_destination_path_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_link=None,
                 shared_content_access_level=None,
                 destination_path=None,
                 shared_content_owner=None):
        self._shared_content_link_value = bb.NOT_SET
        self._shared_content_owner_value = bb.NOT_SET
        self._shared_content_access_level_value = bb.NOT_SET
        self._destination_path_value = bb.NOT_SET
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if shared_content_owner is not None:
            self.shared_content_owner = shared_content_owner
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if destination_path is not None:
            self.destination_path = destination_path

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link")

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_content_owner = bb.Attribute("shared_content_owner", nullable=True, user_defined=True)

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    destination_path = bb.Attribute("destination_path")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentCopyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentCopyDetails_validator = bv.Struct(SharedContentCopyDetails)

class SharedContentCopyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentCopyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentCopyType_validator = bv.Struct(SharedContentCopyType)

class SharedContentDownloadDetails(bb.Struct):
    """
    Downloaded shared file/folder.

    :ivar team_log.SharedContentDownloadDetails.shared_content_link: Shared
        content link.
    :ivar team_log.SharedContentDownloadDetails.shared_content_owner: The shared
        content owner.
    :ivar team_log.SharedContentDownloadDetails.shared_content_access_level:
        Shared content access level.
    """

    __slots__ = [
        '_shared_content_link_value',
        '_shared_content_owner_value',
        '_shared_content_access_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_link=None,
                 shared_content_access_level=None,
                 shared_content_owner=None):
        self._shared_content_link_value = bb.NOT_SET
        self._shared_content_owner_value = bb.NOT_SET
        self._shared_content_access_level_value = bb.NOT_SET
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if shared_content_owner is not None:
            self.shared_content_owner = shared_content_owner
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link")

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_content_owner = bb.Attribute("shared_content_owner", nullable=True, user_defined=True)

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentDownloadDetails_validator = bv.Struct(SharedContentDownloadDetails)

class SharedContentDownloadType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentDownloadType_validator = bv.Struct(SharedContentDownloadType)

class SharedContentRelinquishMembershipDetails(bb.Struct):
    """
    Left shared file/folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRelinquishMembershipDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRelinquishMembershipDetails_validator = bv.Struct(SharedContentRelinquishMembershipDetails)

class SharedContentRelinquishMembershipType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRelinquishMembershipType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRelinquishMembershipType_validator = bv.Struct(SharedContentRelinquishMembershipType)

class SharedContentRemoveInviteesDetails(bb.Struct):
    """
    Removed invitee from shared file/folder before invite was accepted.

    :ivar team_log.SharedContentRemoveInviteesDetails.invitees: A list of
        invitees.
    """

    __slots__ = [
        '_invitees_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 invitees=None):
        self._invitees_value = bb.NOT_SET
        if invitees is not None:
            self.invitees = invitees

    # Instance attribute type: list of [str] (validator is set below)
    invitees = bb.Attribute("invitees")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveInviteesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveInviteesDetails_validator = bv.Struct(SharedContentRemoveInviteesDetails)

class SharedContentRemoveInviteesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveInviteesType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveInviteesType_validator = bv.Struct(SharedContentRemoveInviteesType)

class SharedContentRemoveLinkExpiryDetails(bb.Struct):
    """
    Removed link expiration date of shared file/folder.

    :ivar team_log.SharedContentRemoveLinkExpiryDetails.previous_value: Previous
        shared content link expiration date. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: datetime.datetime (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveLinkExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveLinkExpiryDetails_validator = bv.Struct(SharedContentRemoveLinkExpiryDetails)

class SharedContentRemoveLinkExpiryType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveLinkExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveLinkExpiryType_validator = bv.Struct(SharedContentRemoveLinkExpiryType)

class SharedContentRemoveLinkPasswordDetails(bb.Struct):
    """
    Removed link password of shared file/folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveLinkPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveLinkPasswordDetails_validator = bv.Struct(SharedContentRemoveLinkPasswordDetails)

class SharedContentRemoveLinkPasswordType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveLinkPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveLinkPasswordType_validator = bv.Struct(SharedContentRemoveLinkPasswordType)

class SharedContentRemoveMemberDetails(bb.Struct):
    """
    Removed user/group from shared file/folder.

    :ivar team_log.SharedContentRemoveMemberDetails.shared_content_access_level:
        Shared content access level.
    """

    __slots__ = [
        '_shared_content_access_level_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_content_access_level=None):
        self._shared_content_access_level_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveMemberDetails_validator = bv.Struct(SharedContentRemoveMemberDetails)

class SharedContentRemoveMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRemoveMemberType_validator = bv.Struct(SharedContentRemoveMemberType)

class SharedContentRequestAccessDetails(bb.Struct):
    """
    Requested access to shared file/folder.

    :ivar team_log.SharedContentRequestAccessDetails.shared_content_link: Shared
        content link.
    """

    __slots__ = [
        '_shared_content_link_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_content_link=None):
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRequestAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRequestAccessDetails_validator = bv.Struct(SharedContentRequestAccessDetails)

class SharedContentRequestAccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRequestAccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRequestAccessType_validator = bv.Struct(SharedContentRequestAccessType)

class SharedContentRestoreInviteesDetails(bb.Struct):
    """
    Restored shared file/folder invitees.

    :ivar
        team_log.SharedContentRestoreInviteesDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedContentRestoreInviteesDetails.invitees: A list of
        invitees.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_invitees_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 invitees=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._invitees_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if invitees is not None:
            self.invitees = invitees

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: list of [str] (validator is set below)
    invitees = bb.Attribute("invitees")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRestoreInviteesDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRestoreInviteesDetails_validator = bv.Struct(SharedContentRestoreInviteesDetails)

class SharedContentRestoreInviteesType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRestoreInviteesType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRestoreInviteesType_validator = bv.Struct(SharedContentRestoreInviteesType)

class SharedContentRestoreMemberDetails(bb.Struct):
    """
    Restored users and/or groups to membership of shared file/folder.

    :ivar
        team_log.SharedContentRestoreMemberDetails.shared_content_access_level:
        Shared content access level.
    """

    __slots__ = [
        '_shared_content_access_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None):
        self._shared_content_access_level_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRestoreMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRestoreMemberDetails_validator = bv.Struct(SharedContentRestoreMemberDetails)

class SharedContentRestoreMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentRestoreMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentRestoreMemberType_validator = bv.Struct(SharedContentRestoreMemberType)

class SharedContentUnshareDetails(bb.Struct):
    """
    Unshared file/folder by clearing membership.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentUnshareDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentUnshareDetails_validator = bv.Struct(SharedContentUnshareDetails)

class SharedContentUnshareType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentUnshareType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentUnshareType_validator = bv.Struct(SharedContentUnshareType)

class SharedContentViewDetails(bb.Struct):
    """
    Previewed shared file/folder.

    :ivar team_log.SharedContentViewDetails.shared_content_link: Shared content
        link.
    :ivar team_log.SharedContentViewDetails.shared_content_owner: The shared
        content owner.
    :ivar team_log.SharedContentViewDetails.shared_content_access_level: Shared
        content access level.
    """

    __slots__ = [
        '_shared_content_link_value',
        '_shared_content_owner_value',
        '_shared_content_access_level_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_link=None,
                 shared_content_access_level=None,
                 shared_content_owner=None):
        self._shared_content_link_value = bb.NOT_SET
        self._shared_content_owner_value = bb.NOT_SET
        self._shared_content_access_level_value = bb.NOT_SET
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if shared_content_owner is not None:
            self.shared_content_owner = shared_content_owner
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link")

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_content_owner = bb.Attribute("shared_content_owner", nullable=True, user_defined=True)

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentViewDetails_validator = bv.Struct(SharedContentViewDetails)

class SharedContentViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedContentViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedContentViewType_validator = bv.Struct(SharedContentViewType)

class SharedFolderChangeLinkPolicyDetails(bb.Struct):
    """
    Changed who can access shared folder via link.

    :ivar team_log.SharedFolderChangeLinkPolicyDetails.new_value: New shared
        folder link policy.
    :ivar team_log.SharedFolderChangeLinkPolicyDetails.previous_value: Previous
        shared folder link policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.SharedLinkPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: sharing.SharedLinkPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeLinkPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeLinkPolicyDetails_validator = bv.Struct(SharedFolderChangeLinkPolicyDetails)

class SharedFolderChangeLinkPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeLinkPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeLinkPolicyType_validator = bv.Struct(SharedFolderChangeLinkPolicyType)

class SharedFolderChangeMembersInheritancePolicyDetails(bb.Struct):
    """
    Changed whether shared folder inherits members from parent folder.

    :ivar team_log.SharedFolderChangeMembersInheritancePolicyDetails.new_value:
        New member inheritance policy.
    :ivar
        team_log.SharedFolderChangeMembersInheritancePolicyDetails.previous_value:
        Previous member inheritance policy. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: SharedFolderMembersInheritancePolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: SharedFolderMembersInheritancePolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeMembersInheritancePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeMembersInheritancePolicyDetails_validator = bv.Struct(SharedFolderChangeMembersInheritancePolicyDetails)

class SharedFolderChangeMembersInheritancePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeMembersInheritancePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeMembersInheritancePolicyType_validator = bv.Struct(SharedFolderChangeMembersInheritancePolicyType)

class SharedFolderChangeMembersManagementPolicyDetails(bb.Struct):
    """
    Changed who can add/remove members of shared folder.

    :ivar team_log.SharedFolderChangeMembersManagementPolicyDetails.new_value:
        New members management policy.
    :ivar
        team_log.SharedFolderChangeMembersManagementPolicyDetails.previous_value:
        Previous members management policy. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.AclUpdatePolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: sharing.AclUpdatePolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeMembersManagementPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeMembersManagementPolicyDetails_validator = bv.Struct(SharedFolderChangeMembersManagementPolicyDetails)

class SharedFolderChangeMembersManagementPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeMembersManagementPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeMembersManagementPolicyType_validator = bv.Struct(SharedFolderChangeMembersManagementPolicyType)

class SharedFolderChangeMembersPolicyDetails(bb.Struct):
    """
    Changed who can become member of shared folder.

    :ivar team_log.SharedFolderChangeMembersPolicyDetails.new_value: New
        external invite policy.
    :ivar team_log.SharedFolderChangeMembersPolicyDetails.previous_value:
        Previous external invite policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.MemberPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: sharing.MemberPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeMembersPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeMembersPolicyDetails_validator = bv.Struct(SharedFolderChangeMembersPolicyDetails)

class SharedFolderChangeMembersPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderChangeMembersPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderChangeMembersPolicyType_validator = bv.Struct(SharedFolderChangeMembersPolicyType)

class SharedFolderCreateDetails(bb.Struct):
    """
    Created shared folder.

    :ivar team_log.SharedFolderCreateDetails.target_ns_id: Target namespace ID.
    """

    __slots__ = [
        '_target_ns_id_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 target_ns_id=None):
        self._target_ns_id_value = bb.NOT_SET
        if target_ns_id is not None:
            self.target_ns_id = target_ns_id

    # Instance attribute type: str (validator is set below)
    target_ns_id = bb.Attribute("target_ns_id", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderCreateDetails_validator = bv.Struct(SharedFolderCreateDetails)

class SharedFolderCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderCreateType_validator = bv.Struct(SharedFolderCreateType)

class SharedFolderDeclineInvitationDetails(bb.Struct):
    """
    Declined team member's invite to shared folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderDeclineInvitationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderDeclineInvitationDetails_validator = bv.Struct(SharedFolderDeclineInvitationDetails)

class SharedFolderDeclineInvitationType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderDeclineInvitationType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderDeclineInvitationType_validator = bv.Struct(SharedFolderDeclineInvitationType)

class SharedFolderMembersInheritancePolicy(bb.Union):
    """
    Specifies if a shared folder inherits its members from the parent folder.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    dont_inherit_members = None
    # Attribute is overwritten below the class definition
    inherit_members = None
    # Attribute is overwritten below the class definition
    other = None

    def is_dont_inherit_members(self):
        """
        Check if the union tag is ``dont_inherit_members``.

        :rtype: bool
        """
        return self._tag == 'dont_inherit_members'

    def is_inherit_members(self):
        """
        Check if the union tag is ``inherit_members``.

        :rtype: bool
        """
        return self._tag == 'inherit_members'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderMembersInheritancePolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderMembersInheritancePolicy_validator = bv.Union(SharedFolderMembersInheritancePolicy)

class SharedFolderMountDetails(bb.Struct):
    """
    Added shared folder to own Dropbox.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderMountDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderMountDetails_validator = bv.Struct(SharedFolderMountDetails)

class SharedFolderMountType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderMountType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderMountType_validator = bv.Struct(SharedFolderMountType)

class SharedFolderNestDetails(bb.Struct):
    """
    Changed parent of shared folder.

    :ivar team_log.SharedFolderNestDetails.previous_parent_ns_id: Previous
        parent namespace ID.
    :ivar team_log.SharedFolderNestDetails.new_parent_ns_id: New parent
        namespace ID.
    :ivar team_log.SharedFolderNestDetails.previous_ns_path: Previous namespace
        path.
    :ivar team_log.SharedFolderNestDetails.new_ns_path: New namespace path.
    """

    __slots__ = [
        '_previous_parent_ns_id_value',
        '_new_parent_ns_id_value',
        '_previous_ns_path_value',
        '_new_ns_path_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 previous_parent_ns_id=None,
                 new_parent_ns_id=None,
                 previous_ns_path=None,
                 new_ns_path=None):
        self._previous_parent_ns_id_value = bb.NOT_SET
        self._new_parent_ns_id_value = bb.NOT_SET
        self._previous_ns_path_value = bb.NOT_SET
        self._new_ns_path_value = bb.NOT_SET
        if previous_parent_ns_id is not None:
            self.previous_parent_ns_id = previous_parent_ns_id
        if new_parent_ns_id is not None:
            self.new_parent_ns_id = new_parent_ns_id
        if previous_ns_path is not None:
            self.previous_ns_path = previous_ns_path
        if new_ns_path is not None:
            self.new_ns_path = new_ns_path

    # Instance attribute type: str (validator is set below)
    previous_parent_ns_id = bb.Attribute("previous_parent_ns_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    new_parent_ns_id = bb.Attribute("new_parent_ns_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    previous_ns_path = bb.Attribute("previous_ns_path", nullable=True)

    # Instance attribute type: str (validator is set below)
    new_ns_path = bb.Attribute("new_ns_path", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderNestDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderNestDetails_validator = bv.Struct(SharedFolderNestDetails)

class SharedFolderNestType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderNestType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderNestType_validator = bv.Struct(SharedFolderNestType)

class SharedFolderTransferOwnershipDetails(bb.Struct):
    """
    Transferred ownership of shared folder to another member.

    :ivar team_log.SharedFolderTransferOwnershipDetails.previous_owner_email:
        The email address of the previous shared folder owner.
    :ivar team_log.SharedFolderTransferOwnershipDetails.new_owner_email: The
        email address of the new shared folder owner.
    """

    __slots__ = [
        '_previous_owner_email_value',
        '_new_owner_email_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_owner_email=None,
                 previous_owner_email=None):
        self._previous_owner_email_value = bb.NOT_SET
        self._new_owner_email_value = bb.NOT_SET
        if previous_owner_email is not None:
            self.previous_owner_email = previous_owner_email
        if new_owner_email is not None:
            self.new_owner_email = new_owner_email

    # Instance attribute type: str (validator is set below)
    previous_owner_email = bb.Attribute("previous_owner_email", nullable=True)

    # Instance attribute type: str (validator is set below)
    new_owner_email = bb.Attribute("new_owner_email")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderTransferOwnershipDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderTransferOwnershipDetails_validator = bv.Struct(SharedFolderTransferOwnershipDetails)

class SharedFolderTransferOwnershipType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderTransferOwnershipType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderTransferOwnershipType_validator = bv.Struct(SharedFolderTransferOwnershipType)

class SharedFolderUnmountDetails(bb.Struct):
    """
    Deleted shared folder from Dropbox.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderUnmountDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderUnmountDetails_validator = bv.Struct(SharedFolderUnmountDetails)

class SharedFolderUnmountType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedFolderUnmountType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedFolderUnmountType_validator = bv.Struct(SharedFolderUnmountType)

class SharedLinkAccessLevel(bb.Union):
    """
    Shared link access level.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    none = None
    # Attribute is overwritten below the class definition
    reader = None
    # Attribute is overwritten below the class definition
    writer = None
    # Attribute is overwritten below the class definition
    other = None

    def is_none(self):
        """
        Check if the union tag is ``none``.

        :rtype: bool
        """
        return self._tag == 'none'

    def is_reader(self):
        """
        Check if the union tag is ``reader``.

        :rtype: bool
        """
        return self._tag == 'reader'

    def is_writer(self):
        """
        Check if the union tag is ``writer``.

        :rtype: bool
        """
        return self._tag == 'writer'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkAccessLevel, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkAccessLevel_validator = bv.Union(SharedLinkAccessLevel)

class SharedLinkAddExpiryDetails(bb.Struct):
    """
    Added shared link expiration date.

    :ivar team_log.SharedLinkAddExpiryDetails.new_value: New shared link
        expiration date.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: datetime.datetime (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkAddExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkAddExpiryDetails_validator = bv.Struct(SharedLinkAddExpiryDetails)

class SharedLinkAddExpiryType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkAddExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkAddExpiryType_validator = bv.Struct(SharedLinkAddExpiryType)

class SharedLinkChangeExpiryDetails(bb.Struct):
    """
    Changed shared link expiration date.

    :ivar team_log.SharedLinkChangeExpiryDetails.new_value: New shared link
        expiration date. Might be missing due to historical data gap.
    :ivar team_log.SharedLinkChangeExpiryDetails.previous_value: Previous shared
        link expiration date. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: datetime.datetime (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkChangeExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkChangeExpiryDetails_validator = bv.Struct(SharedLinkChangeExpiryDetails)

class SharedLinkChangeExpiryType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkChangeExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkChangeExpiryType_validator = bv.Struct(SharedLinkChangeExpiryType)

class SharedLinkChangeVisibilityDetails(bb.Struct):
    """
    Changed visibility of shared link.

    :ivar team_log.SharedLinkChangeVisibilityDetails.new_value: New shared link
        visibility.
    :ivar team_log.SharedLinkChangeVisibilityDetails.previous_value: Previous
        shared link visibility. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: SharedLinkVisibility (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: SharedLinkVisibility (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkChangeVisibilityDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkChangeVisibilityDetails_validator = bv.Struct(SharedLinkChangeVisibilityDetails)

class SharedLinkChangeVisibilityType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkChangeVisibilityType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkChangeVisibilityType_validator = bv.Struct(SharedLinkChangeVisibilityType)

class SharedLinkCopyDetails(bb.Struct):
    """
    Added file/folder to Dropbox from shared link.

    :ivar team_log.SharedLinkCopyDetails.shared_link_owner: Shared link owner
        details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_owner_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None):
        self._shared_link_owner_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkCopyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkCopyDetails_validator = bv.Struct(SharedLinkCopyDetails)

class SharedLinkCopyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkCopyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkCopyType_validator = bv.Struct(SharedLinkCopyType)

class SharedLinkCreateDetails(bb.Struct):
    """
    Created shared link.

    :ivar team_log.SharedLinkCreateDetails.shared_link_access_level: Defines who
        can access the shared link. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_access_level_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_access_level=None):
        self._shared_link_access_level_value = bb.NOT_SET
        if shared_link_access_level is not None:
            self.shared_link_access_level = shared_link_access_level

    # Instance attribute type: SharedLinkAccessLevel (validator is set below)
    shared_link_access_level = bb.Attribute("shared_link_access_level", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkCreateDetails_validator = bv.Struct(SharedLinkCreateDetails)

class SharedLinkCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkCreateType_validator = bv.Struct(SharedLinkCreateType)

class SharedLinkDisableDetails(bb.Struct):
    """
    Removed shared link.

    :ivar team_log.SharedLinkDisableDetails.shared_link_owner: Shared link owner
        details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_owner_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None):
        self._shared_link_owner_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkDisableDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkDisableDetails_validator = bv.Struct(SharedLinkDisableDetails)

class SharedLinkDisableType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkDisableType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkDisableType_validator = bv.Struct(SharedLinkDisableType)

class SharedLinkDownloadDetails(bb.Struct):
    """
    Downloaded file/folder from shared link.

    :ivar team_log.SharedLinkDownloadDetails.shared_link_owner: Shared link
        owner details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_owner_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None):
        self._shared_link_owner_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkDownloadDetails_validator = bv.Struct(SharedLinkDownloadDetails)

class SharedLinkDownloadType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkDownloadType_validator = bv.Struct(SharedLinkDownloadType)

class SharedLinkRemoveExpiryDetails(bb.Struct):
    """
    Removed shared link expiration date.

    :ivar team_log.SharedLinkRemoveExpiryDetails.previous_value: Previous shared
        link expiration date. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: datetime.datetime (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkRemoveExpiryDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkRemoveExpiryDetails_validator = bv.Struct(SharedLinkRemoveExpiryDetails)

class SharedLinkRemoveExpiryType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkRemoveExpiryType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkRemoveExpiryType_validator = bv.Struct(SharedLinkRemoveExpiryType)

class SharedLinkSettingsAddExpirationDetails(bb.Struct):
    """
    Added an expiration date to the shared link.

    :ivar
        team_log.SharedLinkSettingsAddExpirationDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedLinkSettingsAddExpirationDetails.shared_content_link:
        Shared content link.
    :ivar team_log.SharedLinkSettingsAddExpirationDetails.new_value: New shared
        content link expiration date. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None,
                 new_value=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAddExpirationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAddExpirationDetails_validator = bv.Struct(SharedLinkSettingsAddExpirationDetails)

class SharedLinkSettingsAddExpirationType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAddExpirationType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAddExpirationType_validator = bv.Struct(SharedLinkSettingsAddExpirationType)

class SharedLinkSettingsAddPasswordDetails(bb.Struct):
    """
    Added a password to the shared link.

    :ivar
        team_log.SharedLinkSettingsAddPasswordDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedLinkSettingsAddPasswordDetails.shared_content_link:
        Shared content link.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAddPasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAddPasswordDetails_validator = bv.Struct(SharedLinkSettingsAddPasswordDetails)

class SharedLinkSettingsAddPasswordType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAddPasswordType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAddPasswordType_validator = bv.Struct(SharedLinkSettingsAddPasswordType)

class SharedLinkSettingsAllowDownloadDisabledDetails(bb.Struct):
    """
    Disabled downloads.

    :ivar
        team_log.SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_access_level:
        Shared content access level.
    :ivar
        team_log.SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_link:
        Shared content link.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAllowDownloadDisabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAllowDownloadDisabledDetails_validator = bv.Struct(SharedLinkSettingsAllowDownloadDisabledDetails)

class SharedLinkSettingsAllowDownloadDisabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAllowDownloadDisabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAllowDownloadDisabledType_validator = bv.Struct(SharedLinkSettingsAllowDownloadDisabledType)

class SharedLinkSettingsAllowDownloadEnabledDetails(bb.Struct):
    """
    Enabled downloads.

    :ivar
        team_log.SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_access_level:
        Shared content access level.
    :ivar
        team_log.SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_link:
        Shared content link.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAllowDownloadEnabledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAllowDownloadEnabledDetails_validator = bv.Struct(SharedLinkSettingsAllowDownloadEnabledDetails)

class SharedLinkSettingsAllowDownloadEnabledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsAllowDownloadEnabledType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsAllowDownloadEnabledType_validator = bv.Struct(SharedLinkSettingsAllowDownloadEnabledType)

class SharedLinkSettingsChangeAudienceDetails(bb.Struct):
    """
    Changed the audience of the shared link.

    :ivar
        team_log.SharedLinkSettingsChangeAudienceDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedLinkSettingsChangeAudienceDetails.shared_content_link:
        Shared content link.
    :ivar team_log.SharedLinkSettingsChangeAudienceDetails.new_value: New link
        audience value.
    :ivar team_log.SharedLinkSettingsChangeAudienceDetails.previous_value:
        Previous link audience value.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 new_value=None,
                 shared_content_link=None,
                 previous_value=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    # Instance attribute type: sharing.LinkAudience (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: sharing.LinkAudience (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsChangeAudienceDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsChangeAudienceDetails_validator = bv.Struct(SharedLinkSettingsChangeAudienceDetails)

class SharedLinkSettingsChangeAudienceType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsChangeAudienceType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsChangeAudienceType_validator = bv.Struct(SharedLinkSettingsChangeAudienceType)

class SharedLinkSettingsChangeExpirationDetails(bb.Struct):
    """
    Changed the expiration date of the shared link.

    :ivar
        team_log.SharedLinkSettingsChangeExpirationDetails.shared_content_access_level:
        Shared content access level.
    :ivar
        team_log.SharedLinkSettingsChangeExpirationDetails.shared_content_link:
        Shared content link.
    :ivar team_log.SharedLinkSettingsChangeExpirationDetails.new_value: New
        shared content link expiration date. Might be missing due to historical
        data gap.
    :ivar team_log.SharedLinkSettingsChangeExpirationDetails.previous_value:
        Previous shared content link expiration date. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None,
                 new_value=None,
                 previous_value=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsChangeExpirationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsChangeExpirationDetails_validator = bv.Struct(SharedLinkSettingsChangeExpirationDetails)

class SharedLinkSettingsChangeExpirationType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsChangeExpirationType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsChangeExpirationType_validator = bv.Struct(SharedLinkSettingsChangeExpirationType)

class SharedLinkSettingsChangePasswordDetails(bb.Struct):
    """
    Changed the password of the shared link.

    :ivar
        team_log.SharedLinkSettingsChangePasswordDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedLinkSettingsChangePasswordDetails.shared_content_link:
        Shared content link.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsChangePasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsChangePasswordDetails_validator = bv.Struct(SharedLinkSettingsChangePasswordDetails)

class SharedLinkSettingsChangePasswordType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsChangePasswordType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsChangePasswordType_validator = bv.Struct(SharedLinkSettingsChangePasswordType)

class SharedLinkSettingsRemoveExpirationDetails(bb.Struct):
    """
    Removed the expiration date from the shared link.

    :ivar
        team_log.SharedLinkSettingsRemoveExpirationDetails.shared_content_access_level:
        Shared content access level.
    :ivar
        team_log.SharedLinkSettingsRemoveExpirationDetails.shared_content_link:
        Shared content link.
    :ivar team_log.SharedLinkSettingsRemoveExpirationDetails.previous_value:
        Previous shared link expiration date. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None,
                 previous_value=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    # Instance attribute type: datetime.datetime (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsRemoveExpirationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsRemoveExpirationDetails_validator = bv.Struct(SharedLinkSettingsRemoveExpirationDetails)

class SharedLinkSettingsRemoveExpirationType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsRemoveExpirationType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsRemoveExpirationType_validator = bv.Struct(SharedLinkSettingsRemoveExpirationType)

class SharedLinkSettingsRemovePasswordDetails(bb.Struct):
    """
    Removed the password from the shared link.

    :ivar
        team_log.SharedLinkSettingsRemovePasswordDetails.shared_content_access_level:
        Shared content access level.
    :ivar team_log.SharedLinkSettingsRemovePasswordDetails.shared_content_link:
        Shared content link.
    """

    __slots__ = [
        '_shared_content_access_level_value',
        '_shared_content_link_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 shared_content_access_level=None,
                 shared_content_link=None):
        self._shared_content_access_level_value = bb.NOT_SET
        self._shared_content_link_value = bb.NOT_SET
        if shared_content_access_level is not None:
            self.shared_content_access_level = shared_content_access_level
        if shared_content_link is not None:
            self.shared_content_link = shared_content_link

    # Instance attribute type: sharing.AccessLevel (validator is set below)
    shared_content_access_level = bb.Attribute("shared_content_access_level", user_defined=True)

    # Instance attribute type: str (validator is set below)
    shared_content_link = bb.Attribute("shared_content_link", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsRemovePasswordDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsRemovePasswordDetails_validator = bv.Struct(SharedLinkSettingsRemovePasswordDetails)

class SharedLinkSettingsRemovePasswordType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkSettingsRemovePasswordType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkSettingsRemovePasswordType_validator = bv.Struct(SharedLinkSettingsRemovePasswordType)

class SharedLinkShareDetails(bb.Struct):
    """
    Added members as audience of shared link.

    :ivar team_log.SharedLinkShareDetails.shared_link_owner: Shared link owner
        details. Might be missing due to historical data gap.
    :ivar team_log.SharedLinkShareDetails.external_users: Users without a
        Dropbox account that were added as shared link audience.
    """

    __slots__ = [
        '_shared_link_owner_value',
        '_external_users_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None,
                 external_users=None):
        self._shared_link_owner_value = bb.NOT_SET
        self._external_users_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner
        if external_users is not None:
            self.external_users = external_users

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    # Instance attribute type: list of [ExternalUserLogInfo] (validator is set below)
    external_users = bb.Attribute("external_users", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkShareDetails_validator = bv.Struct(SharedLinkShareDetails)

class SharedLinkShareType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkShareType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkShareType_validator = bv.Struct(SharedLinkShareType)

class SharedLinkViewDetails(bb.Struct):
    """
    Opened shared link.

    :ivar team_log.SharedLinkViewDetails.shared_link_owner: Shared link owner
        details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_owner_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None):
        self._shared_link_owner_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkViewDetails_validator = bv.Struct(SharedLinkViewDetails)

class SharedLinkViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkViewType_validator = bv.Struct(SharedLinkViewType)

class SharedLinkVisibility(bb.Union):
    """
    Defines who has access to a shared link.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    no_one = None
    # Attribute is overwritten below the class definition
    password = None
    # Attribute is overwritten below the class definition
    public = None
    # Attribute is overwritten below the class definition
    team_only = None
    # Attribute is overwritten below the class definition
    other = None

    def is_no_one(self):
        """
        Check if the union tag is ``no_one``.

        :rtype: bool
        """
        return self._tag == 'no_one'

    def is_password(self):
        """
        Check if the union tag is ``password``.

        :rtype: bool
        """
        return self._tag == 'password'

    def is_public(self):
        """
        Check if the union tag is ``public``.

        :rtype: bool
        """
        return self._tag == 'public'

    def is_team_only(self):
        """
        Check if the union tag is ``team_only``.

        :rtype: bool
        """
        return self._tag == 'team_only'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedLinkVisibility, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedLinkVisibility_validator = bv.Union(SharedLinkVisibility)

class SharedNoteOpenedDetails(bb.Struct):
    """
    Opened shared Paper doc.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedNoteOpenedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedNoteOpenedDetails_validator = bv.Struct(SharedNoteOpenedDetails)

class SharedNoteOpenedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharedNoteOpenedType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharedNoteOpenedType_validator = bv.Struct(SharedNoteOpenedType)

class SharingChangeFolderJoinPolicyDetails(bb.Struct):
    """
    Changed whether team members can join shared folders owned outside team.

    :ivar team_log.SharingChangeFolderJoinPolicyDetails.new_value: New external
        join policy.
    :ivar team_log.SharingChangeFolderJoinPolicyDetails.previous_value: Previous
        external join policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: SharingFolderJoinPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: SharingFolderJoinPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeFolderJoinPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeFolderJoinPolicyDetails_validator = bv.Struct(SharingChangeFolderJoinPolicyDetails)

class SharingChangeFolderJoinPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeFolderJoinPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeFolderJoinPolicyType_validator = bv.Struct(SharingChangeFolderJoinPolicyType)

class SharingChangeLinkAllowChangeExpirationPolicyDetails(bb.Struct):
    """
    Changed the allow remove or change expiration policy for the links shared
    outside of the team.

    :ivar
        team_log.SharingChangeLinkAllowChangeExpirationPolicyDetails.new_value:
        To.
    :ivar
        team_log.SharingChangeLinkAllowChangeExpirationPolicyDetails.previous_value:
        From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: EnforceLinkPasswordPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: EnforceLinkPasswordPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkAllowChangeExpirationPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkAllowChangeExpirationPolicyDetails_validator = bv.Struct(SharingChangeLinkAllowChangeExpirationPolicyDetails)

class SharingChangeLinkAllowChangeExpirationPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkAllowChangeExpirationPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkAllowChangeExpirationPolicyType_validator = bv.Struct(SharingChangeLinkAllowChangeExpirationPolicyType)

class SharingChangeLinkDefaultExpirationPolicyDetails(bb.Struct):
    """
    Changed the default expiration for the links shared outside of the team.

    :ivar team_log.SharingChangeLinkDefaultExpirationPolicyDetails.new_value:
        To.
    :ivar
        team_log.SharingChangeLinkDefaultExpirationPolicyDetails.previous_value:
        From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: DefaultLinkExpirationDaysPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: DefaultLinkExpirationDaysPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkDefaultExpirationPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkDefaultExpirationPolicyDetails_validator = bv.Struct(SharingChangeLinkDefaultExpirationPolicyDetails)

class SharingChangeLinkDefaultExpirationPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkDefaultExpirationPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkDefaultExpirationPolicyType_validator = bv.Struct(SharingChangeLinkDefaultExpirationPolicyType)

class SharingChangeLinkEnforcePasswordPolicyDetails(bb.Struct):
    """
    Changed the password requirement for the links shared outside of the team.

    :ivar team_log.SharingChangeLinkEnforcePasswordPolicyDetails.new_value: To.
    :ivar team_log.SharingChangeLinkEnforcePasswordPolicyDetails.previous_value:
        From.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ChangeLinkExpirationPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ChangeLinkExpirationPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkEnforcePasswordPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkEnforcePasswordPolicyDetails_validator = bv.Struct(SharingChangeLinkEnforcePasswordPolicyDetails)

class SharingChangeLinkEnforcePasswordPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkEnforcePasswordPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkEnforcePasswordPolicyType_validator = bv.Struct(SharingChangeLinkEnforcePasswordPolicyType)

class SharingChangeLinkPolicyDetails(bb.Struct):
    """
    Changed whether members can share links outside team, and if links are
    accessible only by team members or anyone by default.

    :ivar team_log.SharingChangeLinkPolicyDetails.new_value: New external link
        accessibility policy.
    :ivar team_log.SharingChangeLinkPolicyDetails.previous_value: Previous
        external link accessibility policy. Might be missing due to historical
        data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: SharingLinkPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: SharingLinkPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkPolicyDetails_validator = bv.Struct(SharingChangeLinkPolicyDetails)

class SharingChangeLinkPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeLinkPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeLinkPolicyType_validator = bv.Struct(SharingChangeLinkPolicyType)

class SharingChangeMemberPolicyDetails(bb.Struct):
    """
    Changed whether members can share files/folders outside team.

    :ivar team_log.SharingChangeMemberPolicyDetails.new_value: New external
        invite policy.
    :ivar team_log.SharingChangeMemberPolicyDetails.previous_value: Previous
        external invite policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: SharingMemberPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: SharingMemberPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeMemberPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeMemberPolicyDetails_validator = bv.Struct(SharingChangeMemberPolicyDetails)

class SharingChangeMemberPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingChangeMemberPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingChangeMemberPolicyType_validator = bv.Struct(SharingChangeMemberPolicyType)

class SharingFolderJoinPolicy(bb.Union):
    """
    Policy for controlling if team members can join shared folders owned by non
    team members.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    from_anyone = None
    # Attribute is overwritten below the class definition
    from_team_only = None
    # Attribute is overwritten below the class definition
    other = None

    def is_from_anyone(self):
        """
        Check if the union tag is ``from_anyone``.

        :rtype: bool
        """
        return self._tag == 'from_anyone'

    def is_from_team_only(self):
        """
        Check if the union tag is ``from_team_only``.

        :rtype: bool
        """
        return self._tag == 'from_team_only'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingFolderJoinPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingFolderJoinPolicy_validator = bv.Union(SharingFolderJoinPolicy)

class SharingLinkPolicy(bb.Union):
    """
    Policy for controlling if team members can share links externally

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default_no_one = None
    # Attribute is overwritten below the class definition
    default_private = None
    # Attribute is overwritten below the class definition
    default_public = None
    # Attribute is overwritten below the class definition
    only_private = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default_no_one(self):
        """
        Check if the union tag is ``default_no_one``.

        :rtype: bool
        """
        return self._tag == 'default_no_one'

    def is_default_private(self):
        """
        Check if the union tag is ``default_private``.

        :rtype: bool
        """
        return self._tag == 'default_private'

    def is_default_public(self):
        """
        Check if the union tag is ``default_public``.

        :rtype: bool
        """
        return self._tag == 'default_public'

    def is_only_private(self):
        """
        Check if the union tag is ``only_private``.

        :rtype: bool
        """
        return self._tag == 'only_private'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingLinkPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingLinkPolicy_validator = bv.Union(SharingLinkPolicy)

class SharingMemberPolicy(bb.Union):
    """
    External sharing policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    allow = None
    # Attribute is overwritten below the class definition
    forbid = None
    # Attribute is overwritten below the class definition
    forbid_with_exclusions = None
    # Attribute is overwritten below the class definition
    other = None

    def is_allow(self):
        """
        Check if the union tag is ``allow``.

        :rtype: bool
        """
        return self._tag == 'allow'

    def is_forbid(self):
        """
        Check if the union tag is ``forbid``.

        :rtype: bool
        """
        return self._tag == 'forbid'

    def is_forbid_with_exclusions(self):
        """
        Check if the union tag is ``forbid_with_exclusions``.

        :rtype: bool
        """
        return self._tag == 'forbid_with_exclusions'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SharingMemberPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SharingMemberPolicy_validator = bv.Union(SharingMemberPolicy)

class ShmodelDisableDownloadsDetails(bb.Struct):
    """
    Disabled downloads for link.

    :ivar team_log.ShmodelDisableDownloadsDetails.shared_link_owner: Shared link
        owner details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_owner_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None):
        self._shared_link_owner_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShmodelDisableDownloadsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShmodelDisableDownloadsDetails_validator = bv.Struct(ShmodelDisableDownloadsDetails)

class ShmodelDisableDownloadsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShmodelDisableDownloadsType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShmodelDisableDownloadsType_validator = bv.Struct(ShmodelDisableDownloadsType)

class ShmodelEnableDownloadsDetails(bb.Struct):
    """
    Enabled downloads for link.

    :ivar team_log.ShmodelEnableDownloadsDetails.shared_link_owner: Shared link
        owner details. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_shared_link_owner_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 shared_link_owner=None):
        self._shared_link_owner_value = bb.NOT_SET
        if shared_link_owner is not None:
            self.shared_link_owner = shared_link_owner

    # Instance attribute type: UserLogInfo (validator is set below)
    shared_link_owner = bb.Attribute("shared_link_owner", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShmodelEnableDownloadsDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShmodelEnableDownloadsDetails_validator = bv.Struct(ShmodelEnableDownloadsDetails)

class ShmodelEnableDownloadsType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShmodelEnableDownloadsType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShmodelEnableDownloadsType_validator = bv.Struct(ShmodelEnableDownloadsType)

class ShmodelGroupShareDetails(bb.Struct):
    """
    Shared link with group.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShmodelGroupShareDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShmodelGroupShareDetails_validator = bv.Struct(ShmodelGroupShareDetails)

class ShmodelGroupShareType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShmodelGroupShareType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShmodelGroupShareType_validator = bv.Struct(ShmodelGroupShareType)

class ShowcaseAccessGrantedDetails(bb.Struct):
    """
    Granted access to showcase.

    :ivar team_log.ShowcaseAccessGrantedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseAccessGrantedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseAccessGrantedDetails_validator = bv.Struct(ShowcaseAccessGrantedDetails)

class ShowcaseAccessGrantedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseAccessGrantedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseAccessGrantedType_validator = bv.Struct(ShowcaseAccessGrantedType)

class ShowcaseAddMemberDetails(bb.Struct):
    """
    Added member to showcase.

    :ivar team_log.ShowcaseAddMemberDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseAddMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseAddMemberDetails_validator = bv.Struct(ShowcaseAddMemberDetails)

class ShowcaseAddMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseAddMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseAddMemberType_validator = bv.Struct(ShowcaseAddMemberType)

class ShowcaseArchivedDetails(bb.Struct):
    """
    Archived showcase.

    :ivar team_log.ShowcaseArchivedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseArchivedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseArchivedDetails_validator = bv.Struct(ShowcaseArchivedDetails)

class ShowcaseArchivedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseArchivedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseArchivedType_validator = bv.Struct(ShowcaseArchivedType)

class ShowcaseChangeDownloadPolicyDetails(bb.Struct):
    """
    Enabled/disabled downloading files from Dropbox Showcase for team.

    :ivar team_log.ShowcaseChangeDownloadPolicyDetails.new_value: New Dropbox
        Showcase download policy.
    :ivar team_log.ShowcaseChangeDownloadPolicyDetails.previous_value: Previous
        Dropbox Showcase download policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ShowcaseDownloadPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ShowcaseDownloadPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseChangeDownloadPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseChangeDownloadPolicyDetails_validator = bv.Struct(ShowcaseChangeDownloadPolicyDetails)

class ShowcaseChangeDownloadPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseChangeDownloadPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseChangeDownloadPolicyType_validator = bv.Struct(ShowcaseChangeDownloadPolicyType)

class ShowcaseChangeEnabledPolicyDetails(bb.Struct):
    """
    Enabled/disabled Dropbox Showcase for team.

    :ivar team_log.ShowcaseChangeEnabledPolicyDetails.new_value: New Dropbox
        Showcase policy.
    :ivar team_log.ShowcaseChangeEnabledPolicyDetails.previous_value: Previous
        Dropbox Showcase policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ShowcaseEnabledPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ShowcaseEnabledPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseChangeEnabledPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseChangeEnabledPolicyDetails_validator = bv.Struct(ShowcaseChangeEnabledPolicyDetails)

class ShowcaseChangeEnabledPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseChangeEnabledPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseChangeEnabledPolicyType_validator = bv.Struct(ShowcaseChangeEnabledPolicyType)

class ShowcaseChangeExternalSharingPolicyDetails(bb.Struct):
    """
    Enabled/disabled sharing Dropbox Showcase externally for team.

    :ivar team_log.ShowcaseChangeExternalSharingPolicyDetails.new_value: New
        Dropbox Showcase external sharing policy.
    :ivar team_log.ShowcaseChangeExternalSharingPolicyDetails.previous_value:
        Previous Dropbox Showcase external sharing policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: ShowcaseExternalSharingPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: ShowcaseExternalSharingPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseChangeExternalSharingPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseChangeExternalSharingPolicyDetails_validator = bv.Struct(ShowcaseChangeExternalSharingPolicyDetails)

class ShowcaseChangeExternalSharingPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseChangeExternalSharingPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseChangeExternalSharingPolicyType_validator = bv.Struct(ShowcaseChangeExternalSharingPolicyType)

class ShowcaseCreatedDetails(bb.Struct):
    """
    Created showcase.

    :ivar team_log.ShowcaseCreatedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseCreatedDetails_validator = bv.Struct(ShowcaseCreatedDetails)

class ShowcaseCreatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseCreatedType_validator = bv.Struct(ShowcaseCreatedType)

class ShowcaseDeleteCommentDetails(bb.Struct):
    """
    Deleted showcase comment.

    :ivar team_log.ShowcaseDeleteCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.ShowcaseDeleteCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseDeleteCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseDeleteCommentDetails_validator = bv.Struct(ShowcaseDeleteCommentDetails)

class ShowcaseDeleteCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseDeleteCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseDeleteCommentType_validator = bv.Struct(ShowcaseDeleteCommentType)

class ShowcaseDocumentLogInfo(bb.Struct):
    """
    Showcase document's logged information.

    :ivar team_log.ShowcaseDocumentLogInfo.showcase_id: Showcase document Id.
    :ivar team_log.ShowcaseDocumentLogInfo.showcase_title: Showcase document
        title.
    """

    __slots__ = [
        '_showcase_id_value',
        '_showcase_title_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 showcase_id=None,
                 showcase_title=None):
        self._showcase_id_value = bb.NOT_SET
        self._showcase_title_value = bb.NOT_SET
        if showcase_id is not None:
            self.showcase_id = showcase_id
        if showcase_title is not None:
            self.showcase_title = showcase_title

    # Instance attribute type: str (validator is set below)
    showcase_id = bb.Attribute("showcase_id")

    # Instance attribute type: str (validator is set below)
    showcase_title = bb.Attribute("showcase_title")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseDocumentLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseDocumentLogInfo_validator = bv.Struct(ShowcaseDocumentLogInfo)

class ShowcaseDownloadPolicy(bb.Union):
    """
    Policy for controlling if files can be downloaded from Showcases by team
    members

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseDownloadPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseDownloadPolicy_validator = bv.Union(ShowcaseDownloadPolicy)

class ShowcaseEditCommentDetails(bb.Struct):
    """
    Edited showcase comment.

    :ivar team_log.ShowcaseEditCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.ShowcaseEditCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseEditCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseEditCommentDetails_validator = bv.Struct(ShowcaseEditCommentDetails)

class ShowcaseEditCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseEditCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseEditCommentType_validator = bv.Struct(ShowcaseEditCommentType)

class ShowcaseEditedDetails(bb.Struct):
    """
    Edited showcase.

    :ivar team_log.ShowcaseEditedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseEditedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseEditedDetails_validator = bv.Struct(ShowcaseEditedDetails)

class ShowcaseEditedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseEditedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseEditedType_validator = bv.Struct(ShowcaseEditedType)

class ShowcaseEnabledPolicy(bb.Union):
    """
    Policy for controlling whether Showcase is enabled.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseEnabledPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseEnabledPolicy_validator = bv.Union(ShowcaseEnabledPolicy)

class ShowcaseExternalSharingPolicy(bb.Union):
    """
    Policy for controlling if team members can share Showcases externally.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseExternalSharingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseExternalSharingPolicy_validator = bv.Union(ShowcaseExternalSharingPolicy)

class ShowcaseFileAddedDetails(bb.Struct):
    """
    Added file to showcase.

    :ivar team_log.ShowcaseFileAddedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileAddedDetails_validator = bv.Struct(ShowcaseFileAddedDetails)

class ShowcaseFileAddedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileAddedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileAddedType_validator = bv.Struct(ShowcaseFileAddedType)

class ShowcaseFileDownloadDetails(bb.Struct):
    """
    Downloaded file from showcase.

    :ivar team_log.ShowcaseFileDownloadDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.ShowcaseFileDownloadDetails.download_type: Showcase download
        type.
    """

    __slots__ = [
        '_event_uuid_value',
        '_download_type_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 download_type=None):
        self._event_uuid_value = bb.NOT_SET
        self._download_type_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if download_type is not None:
            self.download_type = download_type

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    download_type = bb.Attribute("download_type")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileDownloadDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileDownloadDetails_validator = bv.Struct(ShowcaseFileDownloadDetails)

class ShowcaseFileDownloadType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileDownloadType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileDownloadType_validator = bv.Struct(ShowcaseFileDownloadType)

class ShowcaseFileRemovedDetails(bb.Struct):
    """
    Removed file from showcase.

    :ivar team_log.ShowcaseFileRemovedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileRemovedDetails_validator = bv.Struct(ShowcaseFileRemovedDetails)

class ShowcaseFileRemovedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileRemovedType_validator = bv.Struct(ShowcaseFileRemovedType)

class ShowcaseFileViewDetails(bb.Struct):
    """
    Viewed file in showcase.

    :ivar team_log.ShowcaseFileViewDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileViewDetails_validator = bv.Struct(ShowcaseFileViewDetails)

class ShowcaseFileViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseFileViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseFileViewType_validator = bv.Struct(ShowcaseFileViewType)

class ShowcasePermanentlyDeletedDetails(bb.Struct):
    """
    Permanently deleted showcase.

    :ivar team_log.ShowcasePermanentlyDeletedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcasePermanentlyDeletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcasePermanentlyDeletedDetails_validator = bv.Struct(ShowcasePermanentlyDeletedDetails)

class ShowcasePermanentlyDeletedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcasePermanentlyDeletedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcasePermanentlyDeletedType_validator = bv.Struct(ShowcasePermanentlyDeletedType)

class ShowcasePostCommentDetails(bb.Struct):
    """
    Added showcase comment.

    :ivar team_log.ShowcasePostCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.ShowcasePostCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcasePostCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcasePostCommentDetails_validator = bv.Struct(ShowcasePostCommentDetails)

class ShowcasePostCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcasePostCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcasePostCommentType_validator = bv.Struct(ShowcasePostCommentType)

class ShowcaseRemoveMemberDetails(bb.Struct):
    """
    Removed member from showcase.

    :ivar team_log.ShowcaseRemoveMemberDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRemoveMemberDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRemoveMemberDetails_validator = bv.Struct(ShowcaseRemoveMemberDetails)

class ShowcaseRemoveMemberType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRemoveMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRemoveMemberType_validator = bv.Struct(ShowcaseRemoveMemberType)

class ShowcaseRenamedDetails(bb.Struct):
    """
    Renamed showcase.

    :ivar team_log.ShowcaseRenamedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRenamedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRenamedDetails_validator = bv.Struct(ShowcaseRenamedDetails)

class ShowcaseRenamedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRenamedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRenamedType_validator = bv.Struct(ShowcaseRenamedType)

class ShowcaseRequestAccessDetails(bb.Struct):
    """
    Requested access to showcase.

    :ivar team_log.ShowcaseRequestAccessDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRequestAccessDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRequestAccessDetails_validator = bv.Struct(ShowcaseRequestAccessDetails)

class ShowcaseRequestAccessType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRequestAccessType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRequestAccessType_validator = bv.Struct(ShowcaseRequestAccessType)

class ShowcaseResolveCommentDetails(bb.Struct):
    """
    Resolved showcase comment.

    :ivar team_log.ShowcaseResolveCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.ShowcaseResolveCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseResolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseResolveCommentDetails_validator = bv.Struct(ShowcaseResolveCommentDetails)

class ShowcaseResolveCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseResolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseResolveCommentType_validator = bv.Struct(ShowcaseResolveCommentType)

class ShowcaseRestoredDetails(bb.Struct):
    """
    Unarchived showcase.

    :ivar team_log.ShowcaseRestoredDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRestoredDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRestoredDetails_validator = bv.Struct(ShowcaseRestoredDetails)

class ShowcaseRestoredType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseRestoredType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseRestoredType_validator = bv.Struct(ShowcaseRestoredType)

class ShowcaseTrashedDeprecatedDetails(bb.Struct):
    """
    Deleted showcase (old version).

    :ivar team_log.ShowcaseTrashedDeprecatedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseTrashedDeprecatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseTrashedDeprecatedDetails_validator = bv.Struct(ShowcaseTrashedDeprecatedDetails)

class ShowcaseTrashedDeprecatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseTrashedDeprecatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseTrashedDeprecatedType_validator = bv.Struct(ShowcaseTrashedDeprecatedType)

class ShowcaseTrashedDetails(bb.Struct):
    """
    Deleted showcase.

    :ivar team_log.ShowcaseTrashedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseTrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseTrashedDetails_validator = bv.Struct(ShowcaseTrashedDetails)

class ShowcaseTrashedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseTrashedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseTrashedType_validator = bv.Struct(ShowcaseTrashedType)

class ShowcaseUnresolveCommentDetails(bb.Struct):
    """
    Unresolved showcase comment.

    :ivar team_log.ShowcaseUnresolveCommentDetails.event_uuid: Event unique
        identifier.
    :ivar team_log.ShowcaseUnresolveCommentDetails.comment_text: Comment text.
    """

    __slots__ = [
        '_event_uuid_value',
        '_comment_text_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None,
                 comment_text=None):
        self._event_uuid_value = bb.NOT_SET
        self._comment_text_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid
        if comment_text is not None:
            self.comment_text = comment_text

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    # Instance attribute type: str (validator is set below)
    comment_text = bb.Attribute("comment_text", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseUnresolveCommentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseUnresolveCommentDetails_validator = bv.Struct(ShowcaseUnresolveCommentDetails)

class ShowcaseUnresolveCommentType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseUnresolveCommentType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseUnresolveCommentType_validator = bv.Struct(ShowcaseUnresolveCommentType)

class ShowcaseUntrashedDeprecatedDetails(bb.Struct):
    """
    Restored showcase (old version).

    :ivar team_log.ShowcaseUntrashedDeprecatedDetails.event_uuid: Event unique
        identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseUntrashedDeprecatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseUntrashedDeprecatedDetails_validator = bv.Struct(ShowcaseUntrashedDeprecatedDetails)

class ShowcaseUntrashedDeprecatedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseUntrashedDeprecatedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseUntrashedDeprecatedType_validator = bv.Struct(ShowcaseUntrashedDeprecatedType)

class ShowcaseUntrashedDetails(bb.Struct):
    """
    Restored showcase.

    :ivar team_log.ShowcaseUntrashedDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseUntrashedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseUntrashedDetails_validator = bv.Struct(ShowcaseUntrashedDetails)

class ShowcaseUntrashedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseUntrashedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseUntrashedType_validator = bv.Struct(ShowcaseUntrashedType)

class ShowcaseViewDetails(bb.Struct):
    """
    Viewed showcase.

    :ivar team_log.ShowcaseViewDetails.event_uuid: Event unique identifier.
    """

    __slots__ = [
        '_event_uuid_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 event_uuid=None):
        self._event_uuid_value = bb.NOT_SET
        if event_uuid is not None:
            self.event_uuid = event_uuid

    # Instance attribute type: str (validator is set below)
    event_uuid = bb.Attribute("event_uuid")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseViewDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseViewDetails_validator = bv.Struct(ShowcaseViewDetails)

class ShowcaseViewType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ShowcaseViewType, self)._process_custom_annotations(annotation_type, field_path, processor)

ShowcaseViewType_validator = bv.Struct(ShowcaseViewType)

class SignInAsSessionEndDetails(bb.Struct):
    """
    Ended admin sign-in-as session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SignInAsSessionEndDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SignInAsSessionEndDetails_validator = bv.Struct(SignInAsSessionEndDetails)

class SignInAsSessionEndType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SignInAsSessionEndType, self)._process_custom_annotations(annotation_type, field_path, processor)

SignInAsSessionEndType_validator = bv.Struct(SignInAsSessionEndType)

class SignInAsSessionStartDetails(bb.Struct):
    """
    Started admin sign-in-as session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SignInAsSessionStartDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SignInAsSessionStartDetails_validator = bv.Struct(SignInAsSessionStartDetails)

class SignInAsSessionStartType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SignInAsSessionStartType, self)._process_custom_annotations(annotation_type, field_path, processor)

SignInAsSessionStartType_validator = bv.Struct(SignInAsSessionStartType)

class SmartSyncChangePolicyDetails(bb.Struct):
    """
    Changed default Smart Sync setting for team members.

    :ivar team_log.SmartSyncChangePolicyDetails.new_value: New smart sync
        policy.
    :ivar team_log.SmartSyncChangePolicyDetails.previous_value: Previous smart
        sync policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.SmartSyncPolicy (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: team_policies.SmartSyncPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncChangePolicyDetails_validator = bv.Struct(SmartSyncChangePolicyDetails)

class SmartSyncChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncChangePolicyType_validator = bv.Struct(SmartSyncChangePolicyType)

class SmartSyncCreateAdminPrivilegeReportDetails(bb.Struct):
    """
    Created Smart Sync non-admin devices report.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncCreateAdminPrivilegeReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncCreateAdminPrivilegeReportDetails_validator = bv.Struct(SmartSyncCreateAdminPrivilegeReportDetails)

class SmartSyncCreateAdminPrivilegeReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncCreateAdminPrivilegeReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncCreateAdminPrivilegeReportType_validator = bv.Struct(SmartSyncCreateAdminPrivilegeReportType)

class SmartSyncNotOptOutDetails(bb.Struct):
    """
    Opted team into Smart Sync.

    :ivar team_log.SmartSyncNotOptOutDetails.previous_value: Previous Smart Sync
        opt out policy.
    :ivar team_log.SmartSyncNotOptOutDetails.new_value: New Smart Sync opt out
        policy.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: SmartSyncOptOutPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: SmartSyncOptOutPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncNotOptOutDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncNotOptOutDetails_validator = bv.Struct(SmartSyncNotOptOutDetails)

class SmartSyncNotOptOutType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncNotOptOutType, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncNotOptOutType_validator = bv.Struct(SmartSyncNotOptOutType)

class SmartSyncOptOutDetails(bb.Struct):
    """
    Opted team out of Smart Sync.

    :ivar team_log.SmartSyncOptOutDetails.previous_value: Previous Smart Sync
        opt out policy.
    :ivar team_log.SmartSyncOptOutDetails.new_value: New Smart Sync opt out
        policy.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: SmartSyncOptOutPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: SmartSyncOptOutPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncOptOutDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncOptOutDetails_validator = bv.Struct(SmartSyncOptOutDetails)

class SmartSyncOptOutPolicy(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    default = None
    # Attribute is overwritten below the class definition
    opted_out = None
    # Attribute is overwritten below the class definition
    other = None

    def is_default(self):
        """
        Check if the union tag is ``default``.

        :rtype: bool
        """
        return self._tag == 'default'

    def is_opted_out(self):
        """
        Check if the union tag is ``opted_out``.

        :rtype: bool
        """
        return self._tag == 'opted_out'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncOptOutPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncOptOutPolicy_validator = bv.Union(SmartSyncOptOutPolicy)

class SmartSyncOptOutType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmartSyncOptOutType, self)._process_custom_annotations(annotation_type, field_path, processor)

SmartSyncOptOutType_validator = bv.Struct(SmartSyncOptOutType)

class SmarterSmartSyncPolicyChangedDetails(bb.Struct):
    """
    Changed automatic Smart Sync setting for team.

    :ivar team_log.SmarterSmartSyncPolicyChangedDetails.previous_value: Previous
        automatic Smart Sync setting.
    :ivar team_log.SmarterSmartSyncPolicyChangedDetails.new_value: New automatic
        Smart Sync setting.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: team_policies.SmarterSmartSyncPolicyState (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: team_policies.SmarterSmartSyncPolicyState (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmarterSmartSyncPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SmarterSmartSyncPolicyChangedDetails_validator = bv.Struct(SmarterSmartSyncPolicyChangedDetails)

class SmarterSmartSyncPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SmarterSmartSyncPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

SmarterSmartSyncPolicyChangedType_validator = bv.Struct(SmarterSmartSyncPolicyChangedType)

class SpaceCapsType(bb.Union):
    """
    Space limit alert policy

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    hard = None
    # Attribute is overwritten below the class definition
    off = None
    # Attribute is overwritten below the class definition
    soft = None
    # Attribute is overwritten below the class definition
    other = None

    def is_hard(self):
        """
        Check if the union tag is ``hard``.

        :rtype: bool
        """
        return self._tag == 'hard'

    def is_off(self):
        """
        Check if the union tag is ``off``.

        :rtype: bool
        """
        return self._tag == 'off'

    def is_soft(self):
        """
        Check if the union tag is ``soft``.

        :rtype: bool
        """
        return self._tag == 'soft'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SpaceCapsType, self)._process_custom_annotations(annotation_type, field_path, processor)

SpaceCapsType_validator = bv.Union(SpaceCapsType)

class SpaceLimitsStatus(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    near_quota = None
    # Attribute is overwritten below the class definition
    over_quota = None
    # Attribute is overwritten below the class definition
    within_quota = None
    # Attribute is overwritten below the class definition
    other = None

    def is_near_quota(self):
        """
        Check if the union tag is ``near_quota``.

        :rtype: bool
        """
        return self._tag == 'near_quota'

    def is_over_quota(self):
        """
        Check if the union tag is ``over_quota``.

        :rtype: bool
        """
        return self._tag == 'over_quota'

    def is_within_quota(self):
        """
        Check if the union tag is ``within_quota``.

        :rtype: bool
        """
        return self._tag == 'within_quota'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SpaceLimitsStatus, self)._process_custom_annotations(annotation_type, field_path, processor)

SpaceLimitsStatus_validator = bv.Union(SpaceLimitsStatus)

class SsoAddCertDetails(bb.Struct):
    """
    Added X.509 certificate for SSO.

    :ivar team_log.SsoAddCertDetails.certificate_details: SSO certificate
        details.
    """

    __slots__ = [
        '_certificate_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 certificate_details=None):
        self._certificate_details_value = bb.NOT_SET
        if certificate_details is not None:
            self.certificate_details = certificate_details

    # Instance attribute type: Certificate (validator is set below)
    certificate_details = bb.Attribute("certificate_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoAddCertDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoAddCertDetails_validator = bv.Struct(SsoAddCertDetails)

class SsoAddCertType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoAddCertType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoAddCertType_validator = bv.Struct(SsoAddCertType)

class SsoAddLoginUrlDetails(bb.Struct):
    """
    Added sign-in URL for SSO.

    :ivar team_log.SsoAddLoginUrlDetails.new_value: New single sign-on login
        URL.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoAddLoginUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoAddLoginUrlDetails_validator = bv.Struct(SsoAddLoginUrlDetails)

class SsoAddLoginUrlType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoAddLoginUrlType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoAddLoginUrlType_validator = bv.Struct(SsoAddLoginUrlType)

class SsoAddLogoutUrlDetails(bb.Struct):
    """
    Added sign-out URL for SSO.

    :ivar team_log.SsoAddLogoutUrlDetails.new_value: New single sign-on logout
        URL.
    """

    __slots__ = [
        '_new_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None):
        self._new_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoAddLogoutUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoAddLogoutUrlDetails_validator = bv.Struct(SsoAddLogoutUrlDetails)

class SsoAddLogoutUrlType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoAddLogoutUrlType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoAddLogoutUrlType_validator = bv.Struct(SsoAddLogoutUrlType)

class SsoChangeCertDetails(bb.Struct):
    """
    Changed X.509 certificate for SSO.

    :ivar team_log.SsoChangeCertDetails.previous_certificate_details: Previous
        SSO certificate details. Might be missing due to historical data gap.
    :ivar team_log.SsoChangeCertDetails.new_certificate_details: New SSO
        certificate details.
    """

    __slots__ = [
        '_previous_certificate_details_value',
        '_new_certificate_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_certificate_details=None,
                 previous_certificate_details=None):
        self._previous_certificate_details_value = bb.NOT_SET
        self._new_certificate_details_value = bb.NOT_SET
        if previous_certificate_details is not None:
            self.previous_certificate_details = previous_certificate_details
        if new_certificate_details is not None:
            self.new_certificate_details = new_certificate_details

    # Instance attribute type: Certificate (validator is set below)
    previous_certificate_details = bb.Attribute("previous_certificate_details", nullable=True, user_defined=True)

    # Instance attribute type: Certificate (validator is set below)
    new_certificate_details = bb.Attribute("new_certificate_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeCertDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeCertDetails_validator = bv.Struct(SsoChangeCertDetails)

class SsoChangeCertType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeCertType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeCertType_validator = bv.Struct(SsoChangeCertType)

class SsoChangeLoginUrlDetails(bb.Struct):
    """
    Changed sign-in URL for SSO.

    :ivar team_log.SsoChangeLoginUrlDetails.previous_value: Previous single
        sign-on login URL.
    :ivar team_log.SsoChangeLoginUrlDetails.new_value: New single sign-on login
        URL.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeLoginUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeLoginUrlDetails_validator = bv.Struct(SsoChangeLoginUrlDetails)

class SsoChangeLoginUrlType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeLoginUrlType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeLoginUrlType_validator = bv.Struct(SsoChangeLoginUrlType)

class SsoChangeLogoutUrlDetails(bb.Struct):
    """
    Changed sign-out URL for SSO.

    :ivar team_log.SsoChangeLogoutUrlDetails.previous_value: Previous single
        sign-on logout URL. Might be missing due to historical data gap.
    :ivar team_log.SsoChangeLogoutUrlDetails.new_value: New single sign-on
        logout URL.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True)

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeLogoutUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeLogoutUrlDetails_validator = bv.Struct(SsoChangeLogoutUrlDetails)

class SsoChangeLogoutUrlType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeLogoutUrlType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeLogoutUrlType_validator = bv.Struct(SsoChangeLogoutUrlType)

class SsoChangePolicyDetails(bb.Struct):
    """
    Changed single sign-on setting for team.

    :ivar team_log.SsoChangePolicyDetails.new_value: New single sign-on policy.
    :ivar team_log.SsoChangePolicyDetails.previous_value: Previous single
        sign-on policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.SsoPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.SsoPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangePolicyDetails_validator = bv.Struct(SsoChangePolicyDetails)

class SsoChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangePolicyType_validator = bv.Struct(SsoChangePolicyType)

class SsoChangeSamlIdentityModeDetails(bb.Struct):
    """
    Changed SAML identity mode for SSO.

    :ivar team_log.SsoChangeSamlIdentityModeDetails.previous_value: Previous
        single sign-on identity mode.
    :ivar team_log.SsoChangeSamlIdentityModeDetails.new_value: New single
        sign-on identity mode.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: int (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: int (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeSamlIdentityModeDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeSamlIdentityModeDetails_validator = bv.Struct(SsoChangeSamlIdentityModeDetails)

class SsoChangeSamlIdentityModeType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoChangeSamlIdentityModeType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoChangeSamlIdentityModeType_validator = bv.Struct(SsoChangeSamlIdentityModeType)

class SsoErrorDetails(bb.Struct):
    """
    Failed to sign in via SSO.

    :ivar team_log.SsoErrorDetails.error_details: Error details.
    """

    __slots__ = [
        '_error_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 error_details=None):
        self._error_details_value = bb.NOT_SET
        if error_details is not None:
            self.error_details = error_details

    # Instance attribute type: FailureDetailsLogInfo (validator is set below)
    error_details = bb.Attribute("error_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoErrorDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoErrorDetails_validator = bv.Struct(SsoErrorDetails)

class SsoErrorType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoErrorType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoErrorType_validator = bv.Struct(SsoErrorType)

class SsoRemoveCertDetails(bb.Struct):
    """
    Removed X.509 certificate for SSO.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoRemoveCertDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoRemoveCertDetails_validator = bv.Struct(SsoRemoveCertDetails)

class SsoRemoveCertType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoRemoveCertType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoRemoveCertType_validator = bv.Struct(SsoRemoveCertType)

class SsoRemoveLoginUrlDetails(bb.Struct):
    """
    Removed sign-in URL for SSO.

    :ivar team_log.SsoRemoveLoginUrlDetails.previous_value: Previous single
        sign-on login URL.
    """

    __slots__ = [
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoRemoveLoginUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoRemoveLoginUrlDetails_validator = bv.Struct(SsoRemoveLoginUrlDetails)

class SsoRemoveLoginUrlType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoRemoveLoginUrlType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoRemoveLoginUrlType_validator = bv.Struct(SsoRemoveLoginUrlType)

class SsoRemoveLogoutUrlDetails(bb.Struct):
    """
    Removed sign-out URL for SSO.

    :ivar team_log.SsoRemoveLogoutUrlDetails.previous_value: Previous single
        sign-on logout URL.
    """

    __slots__ = [
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoRemoveLogoutUrlDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoRemoveLogoutUrlDetails_validator = bv.Struct(SsoRemoveLogoutUrlDetails)

class SsoRemoveLogoutUrlType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(SsoRemoveLogoutUrlType, self)._process_custom_annotations(annotation_type, field_path, processor)

SsoRemoveLogoutUrlType_validator = bv.Struct(SsoRemoveLogoutUrlType)

class StartedEnterpriseAdminSessionDetails(bb.Struct):
    """
    Started enterprise admin session.

    :ivar
        team_log.StartedEnterpriseAdminSessionDetails.federation_extra_details:
        More information about the organization or team.
    """

    __slots__ = [
        '_federation_extra_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 federation_extra_details=None):
        self._federation_extra_details_value = bb.NOT_SET
        if federation_extra_details is not None:
            self.federation_extra_details = federation_extra_details

    # Instance attribute type: FedExtraDetails (validator is set below)
    federation_extra_details = bb.Attribute("federation_extra_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(StartedEnterpriseAdminSessionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

StartedEnterpriseAdminSessionDetails_validator = bv.Struct(StartedEnterpriseAdminSessionDetails)

class StartedEnterpriseAdminSessionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(StartedEnterpriseAdminSessionType, self)._process_custom_annotations(annotation_type, field_path, processor)

StartedEnterpriseAdminSessionType_validator = bv.Struct(StartedEnterpriseAdminSessionType)

class TeamActivityCreateReportDetails(bb.Struct):
    """
    Created team activity report.

    :ivar team_log.TeamActivityCreateReportDetails.start_date: Report start
        date.
    :ivar team_log.TeamActivityCreateReportDetails.end_date: Report end date.
    """

    __slots__ = [
        '_start_date_value',
        '_end_date_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 start_date=None,
                 end_date=None):
        self._start_date_value = bb.NOT_SET
        self._end_date_value = bb.NOT_SET
        if start_date is not None:
            self.start_date = start_date
        if end_date is not None:
            self.end_date = end_date

    # Instance attribute type: datetime.datetime (validator is set below)
    start_date = bb.Attribute("start_date")

    # Instance attribute type: datetime.datetime (validator is set below)
    end_date = bb.Attribute("end_date")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamActivityCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamActivityCreateReportDetails_validator = bv.Struct(TeamActivityCreateReportDetails)

class TeamActivityCreateReportFailDetails(bb.Struct):
    """
    Couldn't generate team activity report.

    :ivar team_log.TeamActivityCreateReportFailDetails.failure_reason: Failure
        reason.
    """

    __slots__ = [
        '_failure_reason_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 failure_reason=None):
        self._failure_reason_value = bb.NOT_SET
        if failure_reason is not None:
            self.failure_reason = failure_reason

    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
    failure_reason = bb.Attribute("failure_reason", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamActivityCreateReportFailDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamActivityCreateReportFailDetails_validator = bv.Struct(TeamActivityCreateReportFailDetails)

class TeamActivityCreateReportFailType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamActivityCreateReportFailType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamActivityCreateReportFailType_validator = bv.Struct(TeamActivityCreateReportFailType)

class TeamActivityCreateReportType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamActivityCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamActivityCreateReportType_validator = bv.Struct(TeamActivityCreateReportType)

class TeamBrandingPolicy(bb.Union):
    """
    Policy for controlling team access to setting up branding feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamBrandingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamBrandingPolicy_validator = bv.Union(TeamBrandingPolicy)

class TeamBrandingPolicyChangedDetails(bb.Struct):
    """
    Changed team branding policy for team.

    :ivar team_log.TeamBrandingPolicyChangedDetails.new_value: New team branding
        policy.
    :ivar team_log.TeamBrandingPolicyChangedDetails.previous_value: Previous
        team branding policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: TeamBrandingPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: TeamBrandingPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamBrandingPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamBrandingPolicyChangedDetails_validator = bv.Struct(TeamBrandingPolicyChangedDetails)

class TeamBrandingPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamBrandingPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamBrandingPolicyChangedType_validator = bv.Struct(TeamBrandingPolicyChangedType)

class TeamDetails(bb.Struct):
    """
    More details about the team.

    :ivar team_log.TeamDetails.team: The name of the team.
    """

    __slots__ = [
        '_team_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team=None):
        self._team_value = bb.NOT_SET
        if team is not None:
            self.team = team

    # Instance attribute type: str (validator is set below)
    team = bb.Attribute("team")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamDetails_validator = bv.Struct(TeamDetails)

class TeamEvent(bb.Struct):
    """
    An audit log event.

    :ivar team_log.TeamEvent.timestamp: The Dropbox timestamp representing when
        the action was taken.
    :ivar team_log.TeamEvent.event_category: The category that this type of
        action belongs to.
    :ivar team_log.TeamEvent.actor: The entity who actually performed the
        action. Might be missing due to historical data gap.
    :ivar team_log.TeamEvent.origin: The origin from which the actor performed
        the action including information about host, ip address, location,
        session, etc. If the action was performed programmatically via the API
        the origin represents the API client.
    :ivar team_log.TeamEvent.involve_non_team_member: True if the action
        involved a non team member either as the actor or as one of the affected
        users. Might be missing due to historical data gap.
    :ivar team_log.TeamEvent.context: The user or team on whose behalf the actor
        performed the action. Might be missing due to historical data gap.
    :ivar team_log.TeamEvent.participants: Zero or more users and/or groups that
        are affected by the action. Note that this list doesn't include any
        actors or users in context.
    :ivar team_log.TeamEvent.assets: Zero or more content assets involved in the
        action. Currently these include Dropbox files and folders but in the
        future we might add other asset types such as Paper documents, folders,
        projects, etc.
    :ivar team_log.TeamEvent.event_type: The particular type of action taken.
    :ivar team_log.TeamEvent.details: The variable event schema applicable to
        this type of action, instantiated with respect to this particular
        action.
    """

    __slots__ = [
        '_timestamp_value',
        '_event_category_value',
        '_actor_value',
        '_origin_value',
        '_involve_non_team_member_value',
        '_context_value',
        '_participants_value',
        '_assets_value',
        '_event_type_value',
        '_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 timestamp=None,
                 event_category=None,
                 event_type=None,
                 details=None,
                 actor=None,
                 origin=None,
                 involve_non_team_member=None,
                 context=None,
                 participants=None,
                 assets=None):
        self._timestamp_value = bb.NOT_SET
        self._event_category_value = bb.NOT_SET
        self._actor_value = bb.NOT_SET
        self._origin_value = bb.NOT_SET
        self._involve_non_team_member_value = bb.NOT_SET
        self._context_value = bb.NOT_SET
        self._participants_value = bb.NOT_SET
        self._assets_value = bb.NOT_SET
        self._event_type_value = bb.NOT_SET
        self._details_value = bb.NOT_SET
        if timestamp is not None:
            self.timestamp = timestamp
        if event_category is not None:
            self.event_category = event_category
        if actor is not None:
            self.actor = actor
        if origin is not None:
            self.origin = origin
        if involve_non_team_member is not None:
            self.involve_non_team_member = involve_non_team_member
        if context is not None:
            self.context = context
        if participants is not None:
            self.participants = participants
        if assets is not None:
            self.assets = assets
        if event_type is not None:
            self.event_type = event_type
        if details is not None:
            self.details = details

    # Instance attribute type: datetime.datetime (validator is set below)
    timestamp = bb.Attribute("timestamp")

    # Instance attribute type: EventCategory (validator is set below)
    event_category = bb.Attribute("event_category", user_defined=True)

    # Instance attribute type: ActorLogInfo (validator is set below)
    actor = bb.Attribute("actor", nullable=True, user_defined=True)

    # Instance attribute type: OriginLogInfo (validator is set below)
    origin = bb.Attribute("origin", nullable=True, user_defined=True)

    # Instance attribute type: bool (validator is set below)
    involve_non_team_member = bb.Attribute("involve_non_team_member", nullable=True)

    # Instance attribute type: ContextLogInfo (validator is set below)
    context = bb.Attribute("context", nullable=True, user_defined=True)

    # Instance attribute type: list of [ParticipantLogInfo] (validator is set below)
    participants = bb.Attribute("participants", nullable=True)

    # Instance attribute type: list of [AssetLogInfo] (validator is set below)
    assets = bb.Attribute("assets", nullable=True)

    # Instance attribute type: EventType (validator is set below)
    event_type = bb.Attribute("event_type", user_defined=True)

    # Instance attribute type: EventDetails (validator is set below)
    details = bb.Attribute("details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamEvent, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamEvent_validator = bv.Struct(TeamEvent)

class TeamExtensionsPolicy(bb.Union):
    """
    Policy for controlling whether App Integrations are enabled for the team.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamExtensionsPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamExtensionsPolicy_validator = bv.Union(TeamExtensionsPolicy)

class TeamExtensionsPolicyChangedDetails(bb.Struct):
    """
    Changed App Integrations setting for team.

    :ivar team_log.TeamExtensionsPolicyChangedDetails.new_value: New Extensions
        policy.
    :ivar team_log.TeamExtensionsPolicyChangedDetails.previous_value: Previous
        Extensions policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: TeamExtensionsPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: TeamExtensionsPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamExtensionsPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamExtensionsPolicyChangedDetails_validator = bv.Struct(TeamExtensionsPolicyChangedDetails)

class TeamExtensionsPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamExtensionsPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamExtensionsPolicyChangedType_validator = bv.Struct(TeamExtensionsPolicyChangedType)

class TeamFolderChangeStatusDetails(bb.Struct):
    """
    Changed archival status of team folder.

    :ivar team_log.TeamFolderChangeStatusDetails.new_value: New team folder
        status.
    :ivar team_log.TeamFolderChangeStatusDetails.previous_value: Previous team
        folder status. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team.TeamFolderStatus (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team.TeamFolderStatus (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderChangeStatusDetails_validator = bv.Struct(TeamFolderChangeStatusDetails)

class TeamFolderChangeStatusType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderChangeStatusType_validator = bv.Struct(TeamFolderChangeStatusType)

class TeamFolderCreateDetails(bb.Struct):
    """
    Created team folder in active status.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderCreateDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderCreateDetails_validator = bv.Struct(TeamFolderCreateDetails)

class TeamFolderCreateType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderCreateType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderCreateType_validator = bv.Struct(TeamFolderCreateType)

class TeamFolderDowngradeDetails(bb.Struct):
    """
    Downgraded team folder to regular shared folder.

    :ivar team_log.TeamFolderDowngradeDetails.target_asset_index: Target asset
        position in the Assets list.
    """

    __slots__ = [
        '_target_asset_index_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 target_asset_index=None):
        self._target_asset_index_value = bb.NOT_SET
        if target_asset_index is not None:
            self.target_asset_index = target_asset_index

    # Instance attribute type: int (validator is set below)
    target_asset_index = bb.Attribute("target_asset_index")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderDowngradeDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderDowngradeDetails_validator = bv.Struct(TeamFolderDowngradeDetails)

class TeamFolderDowngradeType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderDowngradeType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderDowngradeType_validator = bv.Struct(TeamFolderDowngradeType)

class TeamFolderPermanentlyDeleteDetails(bb.Struct):
    """
    Permanently deleted archived team folder.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderPermanentlyDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderPermanentlyDeleteDetails_validator = bv.Struct(TeamFolderPermanentlyDeleteDetails)

class TeamFolderPermanentlyDeleteType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderPermanentlyDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderPermanentlyDeleteType_validator = bv.Struct(TeamFolderPermanentlyDeleteType)

class TeamFolderRenameDetails(bb.Struct):
    """
    Renamed active/archived team folder.

    :ivar team_log.TeamFolderRenameDetails.previous_folder_name: Previous folder
        name.
    :ivar team_log.TeamFolderRenameDetails.new_folder_name: New folder name.
    """

    __slots__ = [
        '_previous_folder_name_value',
        '_new_folder_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_folder_name=None,
                 new_folder_name=None):
        self._previous_folder_name_value = bb.NOT_SET
        self._new_folder_name_value = bb.NOT_SET
        if previous_folder_name is not None:
            self.previous_folder_name = previous_folder_name
        if new_folder_name is not None:
            self.new_folder_name = new_folder_name

    # Instance attribute type: str (validator is set below)
    previous_folder_name = bb.Attribute("previous_folder_name")

    # Instance attribute type: str (validator is set below)
    new_folder_name = bb.Attribute("new_folder_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderRenameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderRenameDetails_validator = bv.Struct(TeamFolderRenameDetails)

class TeamFolderRenameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamFolderRenameType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamFolderRenameType_validator = bv.Struct(TeamFolderRenameType)

class TeamInviteDetails(bb.Struct):
    """
    Details about team invites

    :ivar team_log.TeamInviteDetails.invite_method: How the user was invited to
        the team.
    :ivar team_log.TeamInviteDetails.additional_license_purchase: True if the
        invitation incurred an additional license purchase.
    """

    __slots__ = [
        '_invite_method_value',
        '_additional_license_purchase_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 invite_method=None,
                 additional_license_purchase=None):
        self._invite_method_value = bb.NOT_SET
        self._additional_license_purchase_value = bb.NOT_SET
        if invite_method is not None:
            self.invite_method = invite_method
        if additional_license_purchase is not None:
            self.additional_license_purchase = additional_license_purchase

    # Instance attribute type: InviteMethod (validator is set below)
    invite_method = bb.Attribute("invite_method", user_defined=True)

    # Instance attribute type: bool (validator is set below)
    additional_license_purchase = bb.Attribute("additional_license_purchase", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamInviteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamInviteDetails_validator = bv.Struct(TeamInviteDetails)

class TeamLinkedAppLogInfo(AppLogInfo):
    """
    Team linked app
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 app_id=None,
                 display_name=None):
        super(TeamLinkedAppLogInfo, self).__init__(app_id,
                                                   display_name)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamLinkedAppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamLinkedAppLogInfo_validator = bv.Struct(TeamLinkedAppLogInfo)

class TeamLogInfo(bb.Struct):
    """
    Team's logged information.

    :ivar team_log.TeamLogInfo.display_name: Team display name.
    """

    __slots__ = [
        '_display_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 display_name=None):
        self._display_name_value = bb.NOT_SET
        if display_name is not None:
            self.display_name = display_name

    # Instance attribute type: str (validator is set below)
    display_name = bb.Attribute("display_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamLogInfo_validator = bv.Struct(TeamLogInfo)

class TeamMemberLogInfo(UserLogInfo):
    """
    Team member's logged information.

    :ivar team_log.TeamMemberLogInfo.team_member_id: Team member ID.
    :ivar team_log.TeamMemberLogInfo.member_external_id: Team member external
        ID.
    :ivar team_log.TeamMemberLogInfo.team: Details about this user&#x2019s team
        for enterprise event.
    """

    __slots__ = [
        '_team_member_id_value',
        '_member_external_id_value',
        '_team_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 account_id=None,
                 display_name=None,
                 email=None,
                 team_member_id=None,
                 member_external_id=None,
                 team=None):
        super(TeamMemberLogInfo, self).__init__(account_id,
                                                display_name,
                                                email)
        self._team_member_id_value = bb.NOT_SET
        self._member_external_id_value = bb.NOT_SET
        self._team_value = bb.NOT_SET
        if team_member_id is not None:
            self.team_member_id = team_member_id
        if member_external_id is not None:
            self.member_external_id = member_external_id
        if team is not None:
            self.team = team

    # Instance attribute type: str (validator is set below)
    team_member_id = bb.Attribute("team_member_id", nullable=True)

    # Instance attribute type: str (validator is set below)
    member_external_id = bb.Attribute("member_external_id", nullable=True)

    # Instance attribute type: TeamLogInfo (validator is set below)
    team = bb.Attribute("team", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMemberLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMemberLogInfo_validator = bv.Struct(TeamMemberLogInfo)

class TeamMembershipType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    free = None
    # Attribute is overwritten below the class definition
    full = None
    # Attribute is overwritten below the class definition
    guest = None
    # Attribute is overwritten below the class definition
    other = None

    def is_free(self):
        """
        Check if the union tag is ``free``.

        :rtype: bool
        """
        return self._tag == 'free'

    def is_full(self):
        """
        Check if the union tag is ``full``.

        :rtype: bool
        """
        return self._tag == 'full'

    def is_guest(self):
        """
        Check if the union tag is ``guest``.

        :rtype: bool
        """
        return self._tag == 'guest'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMembershipType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMembershipType_validator = bv.Union(TeamMembershipType)

class TeamMergeFromDetails(bb.Struct):
    """
    Merged another team into this team.

    :ivar team_log.TeamMergeFromDetails.team_name: The name of the team that was
        merged into this team.
    """

    __slots__ = [
        '_team_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team_name=None):
        self._team_name_value = bb.NOT_SET
        if team_name is not None:
            self.team_name = team_name

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeFromDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeFromDetails_validator = bv.Struct(TeamMergeFromDetails)

class TeamMergeFromType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeFromType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeFromType_validator = bv.Struct(TeamMergeFromType)

class TeamMergeRequestAcceptedDetails(bb.Struct):
    """
    Accepted a team merge request.

    :ivar team_log.TeamMergeRequestAcceptedDetails.request_accepted_details:
        Team merge request acceptance details.
    """

    __slots__ = [
        '_request_accepted_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 request_accepted_details=None):
        self._request_accepted_details_value = bb.NOT_SET
        if request_accepted_details is not None:
            self.request_accepted_details = request_accepted_details

    # Instance attribute type: TeamMergeRequestAcceptedExtraDetails (validator is set below)
    request_accepted_details = bb.Attribute("request_accepted_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedDetails_validator = bv.Struct(TeamMergeRequestAcceptedDetails)

class TeamMergeRequestAcceptedExtraDetails(bb.Union):
    """
    Team merge request acceptance details

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar PrimaryTeamRequestAcceptedDetails
        TeamMergeRequestAcceptedExtraDetails.primary_team: Team merge request
        accepted details shown to the primary team.
    :ivar SecondaryTeamRequestAcceptedDetails
        TeamMergeRequestAcceptedExtraDetails.secondary_team: Team merge request
        accepted details shown to the secondary team.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def primary_team(cls, val):
        """
        Create an instance of this class set to the ``primary_team`` tag with
        value ``val``.

        :param PrimaryTeamRequestAcceptedDetails val:
        :rtype: TeamMergeRequestAcceptedExtraDetails
        """
        return cls('primary_team', val)

    @classmethod
    def secondary_team(cls, val):
        """
        Create an instance of this class set to the ``secondary_team`` tag with
        value ``val``.

        :param SecondaryTeamRequestAcceptedDetails val:
        :rtype: TeamMergeRequestAcceptedExtraDetails
        """
        return cls('secondary_team', val)

    def is_primary_team(self):
        """
        Check if the union tag is ``primary_team``.

        :rtype: bool
        """
        return self._tag == 'primary_team'

    def is_secondary_team(self):
        """
        Check if the union tag is ``secondary_team``.

        :rtype: bool
        """
        return self._tag == 'secondary_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_primary_team(self):
        """
        Team merge request accepted details shown to the primary team.

        Only call this if :meth:`is_primary_team` is true.

        :rtype: PrimaryTeamRequestAcceptedDetails
        """
        if not self.is_primary_team():
            raise AttributeError("tag 'primary_team' not set")
        return self._value

    def get_secondary_team(self):
        """
        Team merge request accepted details shown to the secondary team.

        Only call this if :meth:`is_secondary_team` is true.

        :rtype: SecondaryTeamRequestAcceptedDetails
        """
        if not self.is_secondary_team():
            raise AttributeError("tag 'secondary_team' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedExtraDetails_validator = bv.Union(TeamMergeRequestAcceptedExtraDetails)

class TeamMergeRequestAcceptedShownToPrimaryTeamDetails(bb.Struct):
    """
    Accepted a team merge request.

    :ivar
        team_log.TeamMergeRequestAcceptedShownToPrimaryTeamDetails.secondary_team:
        The secondary team name.
    :ivar team_log.TeamMergeRequestAcceptedShownToPrimaryTeamDetails.sent_by:
        The name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestAcceptedShownToPrimaryTeamDetails)

class TeamMergeRequestAcceptedShownToPrimaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestAcceptedShownToPrimaryTeamType)

class TeamMergeRequestAcceptedShownToSecondaryTeamDetails(bb.Struct):
    """
    Accepted a team merge request.

    :ivar
        team_log.TeamMergeRequestAcceptedShownToSecondaryTeamDetails.primary_team:
        The primary team name.
    :ivar team_log.TeamMergeRequestAcceptedShownToSecondaryTeamDetails.sent_by:
        The name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_primary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 primary_team=None,
                 sent_by=None):
        self._primary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if primary_team is not None:
            self.primary_team = primary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    primary_team = bb.Attribute("primary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestAcceptedShownToSecondaryTeamDetails)

class TeamMergeRequestAcceptedShownToSecondaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestAcceptedShownToSecondaryTeamType)

class TeamMergeRequestAcceptedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAcceptedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAcceptedType_validator = bv.Struct(TeamMergeRequestAcceptedType)

class TeamMergeRequestAutoCanceledDetails(bb.Struct):
    """
    Automatically canceled team merge request.

    :ivar team_log.TeamMergeRequestAutoCanceledDetails.details: The cancellation
        reason.
    """

    __slots__ = [
        '_details_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 details=None):
        self._details_value = bb.NOT_SET
        if details is not None:
            self.details = details

    # Instance attribute type: str (validator is set below)
    details = bb.Attribute("details", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAutoCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAutoCanceledDetails_validator = bv.Struct(TeamMergeRequestAutoCanceledDetails)

class TeamMergeRequestAutoCanceledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestAutoCanceledType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestAutoCanceledType_validator = bv.Struct(TeamMergeRequestAutoCanceledType)

class TeamMergeRequestCanceledDetails(bb.Struct):
    """
    Canceled a team merge request.

    :ivar team_log.TeamMergeRequestCanceledDetails.request_canceled_details:
        Team merge request cancellation details.
    """

    __slots__ = [
        '_request_canceled_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 request_canceled_details=None):
        self._request_canceled_details_value = bb.NOT_SET
        if request_canceled_details is not None:
            self.request_canceled_details = request_canceled_details

    # Instance attribute type: TeamMergeRequestCanceledExtraDetails (validator is set below)
    request_canceled_details = bb.Attribute("request_canceled_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledDetails_validator = bv.Struct(TeamMergeRequestCanceledDetails)

class TeamMergeRequestCanceledExtraDetails(bb.Union):
    """
    Team merge request cancellation details

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar PrimaryTeamRequestCanceledDetails
        TeamMergeRequestCanceledExtraDetails.primary_team: Team merge request
        cancellation details shown to the primary team.
    :ivar SecondaryTeamRequestCanceledDetails
        TeamMergeRequestCanceledExtraDetails.secondary_team: Team merge request
        cancellation details shown to the secondary team.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def primary_team(cls, val):
        """
        Create an instance of this class set to the ``primary_team`` tag with
        value ``val``.

        :param PrimaryTeamRequestCanceledDetails val:
        :rtype: TeamMergeRequestCanceledExtraDetails
        """
        return cls('primary_team', val)

    @classmethod
    def secondary_team(cls, val):
        """
        Create an instance of this class set to the ``secondary_team`` tag with
        value ``val``.

        :param SecondaryTeamRequestCanceledDetails val:
        :rtype: TeamMergeRequestCanceledExtraDetails
        """
        return cls('secondary_team', val)

    def is_primary_team(self):
        """
        Check if the union tag is ``primary_team``.

        :rtype: bool
        """
        return self._tag == 'primary_team'

    def is_secondary_team(self):
        """
        Check if the union tag is ``secondary_team``.

        :rtype: bool
        """
        return self._tag == 'secondary_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_primary_team(self):
        """
        Team merge request cancellation details shown to the primary team.

        Only call this if :meth:`is_primary_team` is true.

        :rtype: PrimaryTeamRequestCanceledDetails
        """
        if not self.is_primary_team():
            raise AttributeError("tag 'primary_team' not set")
        return self._value

    def get_secondary_team(self):
        """
        Team merge request cancellation details shown to the secondary team.

        Only call this if :meth:`is_secondary_team` is true.

        :rtype: SecondaryTeamRequestCanceledDetails
        """
        if not self.is_secondary_team():
            raise AttributeError("tag 'secondary_team' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledExtraDetails_validator = bv.Union(TeamMergeRequestCanceledExtraDetails)

class TeamMergeRequestCanceledShownToPrimaryTeamDetails(bb.Struct):
    """
    Canceled a team merge request.

    :ivar
        team_log.TeamMergeRequestCanceledShownToPrimaryTeamDetails.secondary_team:
        The secondary team name.
    :ivar team_log.TeamMergeRequestCanceledShownToPrimaryTeamDetails.sent_by:
        The name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestCanceledShownToPrimaryTeamDetails)

class TeamMergeRequestCanceledShownToPrimaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestCanceledShownToPrimaryTeamType)

class TeamMergeRequestCanceledShownToSecondaryTeamDetails(bb.Struct):
    """
    Canceled a team merge request.

    :ivar team_log.TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_to:
        The email of the primary team admin that the request was sent to.
    :ivar team_log.TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_by:
        The name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_sent_to_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None,
                 sent_by=None):
        self._sent_to_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestCanceledShownToSecondaryTeamDetails)

class TeamMergeRequestCanceledShownToSecondaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestCanceledShownToSecondaryTeamType)

class TeamMergeRequestCanceledType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestCanceledType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestCanceledType_validator = bv.Struct(TeamMergeRequestCanceledType)

class TeamMergeRequestExpiredDetails(bb.Struct):
    """
    Team merge request expired.

    :ivar team_log.TeamMergeRequestExpiredDetails.request_expired_details: Team
        merge request expiration details.
    """

    __slots__ = [
        '_request_expired_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 request_expired_details=None):
        self._request_expired_details_value = bb.NOT_SET
        if request_expired_details is not None:
            self.request_expired_details = request_expired_details

    # Instance attribute type: TeamMergeRequestExpiredExtraDetails (validator is set below)
    request_expired_details = bb.Attribute("request_expired_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredDetails_validator = bv.Struct(TeamMergeRequestExpiredDetails)

class TeamMergeRequestExpiredExtraDetails(bb.Union):
    """
    Team merge request expiration details

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar PrimaryTeamRequestExpiredDetails
        TeamMergeRequestExpiredExtraDetails.primary_team: Team merge request
        canceled details shown to the primary team.
    :ivar SecondaryTeamRequestExpiredDetails
        TeamMergeRequestExpiredExtraDetails.secondary_team: Team merge request
        canceled details shown to the secondary team.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def primary_team(cls, val):
        """
        Create an instance of this class set to the ``primary_team`` tag with
        value ``val``.

        :param PrimaryTeamRequestExpiredDetails val:
        :rtype: TeamMergeRequestExpiredExtraDetails
        """
        return cls('primary_team', val)

    @classmethod
    def secondary_team(cls, val):
        """
        Create an instance of this class set to the ``secondary_team`` tag with
        value ``val``.

        :param SecondaryTeamRequestExpiredDetails val:
        :rtype: TeamMergeRequestExpiredExtraDetails
        """
        return cls('secondary_team', val)

    def is_primary_team(self):
        """
        Check if the union tag is ``primary_team``.

        :rtype: bool
        """
        return self._tag == 'primary_team'

    def is_secondary_team(self):
        """
        Check if the union tag is ``secondary_team``.

        :rtype: bool
        """
        return self._tag == 'secondary_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_primary_team(self):
        """
        Team merge request canceled details shown to the primary team.

        Only call this if :meth:`is_primary_team` is true.

        :rtype: PrimaryTeamRequestExpiredDetails
        """
        if not self.is_primary_team():
            raise AttributeError("tag 'primary_team' not set")
        return self._value

    def get_secondary_team(self):
        """
        Team merge request canceled details shown to the secondary team.

        Only call this if :meth:`is_secondary_team` is true.

        :rtype: SecondaryTeamRequestExpiredDetails
        """
        if not self.is_secondary_team():
            raise AttributeError("tag 'secondary_team' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredExtraDetails_validator = bv.Union(TeamMergeRequestExpiredExtraDetails)

class TeamMergeRequestExpiredShownToPrimaryTeamDetails(bb.Struct):
    """
    Team merge request expired.

    :ivar
        team_log.TeamMergeRequestExpiredShownToPrimaryTeamDetails.secondary_team:
        The secondary team name.
    :ivar team_log.TeamMergeRequestExpiredShownToPrimaryTeamDetails.sent_by: The
        name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestExpiredShownToPrimaryTeamDetails)

class TeamMergeRequestExpiredShownToPrimaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestExpiredShownToPrimaryTeamType)

class TeamMergeRequestExpiredShownToSecondaryTeamDetails(bb.Struct):
    """
    Team merge request expired.

    :ivar team_log.TeamMergeRequestExpiredShownToSecondaryTeamDetails.sent_to:
        The email of the primary team admin the request was sent to.
    """

    __slots__ = [
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None):
        self._sent_to_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestExpiredShownToSecondaryTeamDetails)

class TeamMergeRequestExpiredShownToSecondaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestExpiredShownToSecondaryTeamType)

class TeamMergeRequestExpiredType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestExpiredType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestExpiredType_validator = bv.Struct(TeamMergeRequestExpiredType)

class TeamMergeRequestRejectedShownToPrimaryTeamDetails(bb.Struct):
    """
    Rejected a team merge request.

    :ivar
        team_log.TeamMergeRequestRejectedShownToPrimaryTeamDetails.secondary_team:
        The secondary team name.
    :ivar team_log.TeamMergeRequestRejectedShownToPrimaryTeamDetails.sent_by:
        The name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_by=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_by_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestRejectedShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestRejectedShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestRejectedShownToPrimaryTeamDetails)

class TeamMergeRequestRejectedShownToPrimaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestRejectedShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestRejectedShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestRejectedShownToPrimaryTeamType)

class TeamMergeRequestRejectedShownToSecondaryTeamDetails(bb.Struct):
    """
    Rejected a team merge request.

    :ivar team_log.TeamMergeRequestRejectedShownToSecondaryTeamDetails.sent_by:
        The name of the secondary team admin who sent the request originally.
    """

    __slots__ = [
        '_sent_by_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_by=None):
        self._sent_by_value = bb.NOT_SET
        if sent_by is not None:
            self.sent_by = sent_by

    # Instance attribute type: str (validator is set below)
    sent_by = bb.Attribute("sent_by")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestRejectedShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestRejectedShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestRejectedShownToSecondaryTeamDetails)

class TeamMergeRequestRejectedShownToSecondaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestRejectedShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestRejectedShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestRejectedShownToSecondaryTeamType)

class TeamMergeRequestReminderDetails(bb.Struct):
    """
    Sent a team merge request reminder.

    :ivar team_log.TeamMergeRequestReminderDetails.request_reminder_details:
        Team merge request reminder details.
    """

    __slots__ = [
        '_request_reminder_details_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 request_reminder_details=None):
        self._request_reminder_details_value = bb.NOT_SET
        if request_reminder_details is not None:
            self.request_reminder_details = request_reminder_details

    # Instance attribute type: TeamMergeRequestReminderExtraDetails (validator is set below)
    request_reminder_details = bb.Attribute("request_reminder_details", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderDetails_validator = bv.Struct(TeamMergeRequestReminderDetails)

class TeamMergeRequestReminderExtraDetails(bb.Union):
    """
    Team merge request reminder details

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar PrimaryTeamRequestReminderDetails
        TeamMergeRequestReminderExtraDetails.primary_team: Team merge request
        reminder details shown to the primary team.
    :ivar SecondaryTeamRequestReminderDetails
        TeamMergeRequestReminderExtraDetails.secondary_team: Team merge request
        reminder details shown to the secondary team.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def primary_team(cls, val):
        """
        Create an instance of this class set to the ``primary_team`` tag with
        value ``val``.

        :param PrimaryTeamRequestReminderDetails val:
        :rtype: TeamMergeRequestReminderExtraDetails
        """
        return cls('primary_team', val)

    @classmethod
    def secondary_team(cls, val):
        """
        Create an instance of this class set to the ``secondary_team`` tag with
        value ``val``.

        :param SecondaryTeamRequestReminderDetails val:
        :rtype: TeamMergeRequestReminderExtraDetails
        """
        return cls('secondary_team', val)

    def is_primary_team(self):
        """
        Check if the union tag is ``primary_team``.

        :rtype: bool
        """
        return self._tag == 'primary_team'

    def is_secondary_team(self):
        """
        Check if the union tag is ``secondary_team``.

        :rtype: bool
        """
        return self._tag == 'secondary_team'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_primary_team(self):
        """
        Team merge request reminder details shown to the primary team.

        Only call this if :meth:`is_primary_team` is true.

        :rtype: PrimaryTeamRequestReminderDetails
        """
        if not self.is_primary_team():
            raise AttributeError("tag 'primary_team' not set")
        return self._value

    def get_secondary_team(self):
        """
        Team merge request reminder details shown to the secondary team.

        Only call this if :meth:`is_secondary_team` is true.

        :rtype: SecondaryTeamRequestReminderDetails
        """
        if not self.is_secondary_team():
            raise AttributeError("tag 'secondary_team' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderExtraDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderExtraDetails_validator = bv.Union(TeamMergeRequestReminderExtraDetails)

class TeamMergeRequestReminderShownToPrimaryTeamDetails(bb.Struct):
    """
    Sent a team merge request reminder.

    :ivar
        team_log.TeamMergeRequestReminderShownToPrimaryTeamDetails.secondary_team:
        The secondary team name.
    :ivar team_log.TeamMergeRequestReminderShownToPrimaryTeamDetails.sent_to:
        The name of the primary team admin the request was sent to.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_to=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_to_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestReminderShownToPrimaryTeamDetails)

class TeamMergeRequestReminderShownToPrimaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestReminderShownToPrimaryTeamType)

class TeamMergeRequestReminderShownToSecondaryTeamDetails(bb.Struct):
    """
    Sent a team merge request reminder.

    :ivar team_log.TeamMergeRequestReminderShownToSecondaryTeamDetails.sent_to:
        The email of the primary team admin the request was sent to.
    """

    __slots__ = [
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None):
        self._sent_to_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestReminderShownToSecondaryTeamDetails)

class TeamMergeRequestReminderShownToSecondaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestReminderShownToSecondaryTeamType)

class TeamMergeRequestReminderType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestReminderType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestReminderType_validator = bv.Struct(TeamMergeRequestReminderType)

class TeamMergeRequestRevokedDetails(bb.Struct):
    """
    Canceled the team merge.

    :ivar team_log.TeamMergeRequestRevokedDetails.team: The name of the other
        team.
    """

    __slots__ = [
        '_team_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team=None):
        self._team_value = bb.NOT_SET
        if team is not None:
            self.team = team

    # Instance attribute type: str (validator is set below)
    team = bb.Attribute("team")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestRevokedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestRevokedDetails_validator = bv.Struct(TeamMergeRequestRevokedDetails)

class TeamMergeRequestRevokedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestRevokedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestRevokedType_validator = bv.Struct(TeamMergeRequestRevokedType)

class TeamMergeRequestSentShownToPrimaryTeamDetails(bb.Struct):
    """
    Requested to merge their Dropbox team into yours.

    :ivar team_log.TeamMergeRequestSentShownToPrimaryTeamDetails.secondary_team:
        The secondary team name.
    :ivar team_log.TeamMergeRequestSentShownToPrimaryTeamDetails.sent_to: The
        name of the primary team admin the request was sent to.
    """

    __slots__ = [
        '_secondary_team_value',
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 secondary_team=None,
                 sent_to=None):
        self._secondary_team_value = bb.NOT_SET
        self._sent_to_value = bb.NOT_SET
        if secondary_team is not None:
            self.secondary_team = secondary_team
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    secondary_team = bb.Attribute("secondary_team")

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestSentShownToPrimaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestSentShownToPrimaryTeamDetails_validator = bv.Struct(TeamMergeRequestSentShownToPrimaryTeamDetails)

class TeamMergeRequestSentShownToPrimaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestSentShownToPrimaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestSentShownToPrimaryTeamType_validator = bv.Struct(TeamMergeRequestSentShownToPrimaryTeamType)

class TeamMergeRequestSentShownToSecondaryTeamDetails(bb.Struct):
    """
    Requested to merge your team into another Dropbox team.

    :ivar team_log.TeamMergeRequestSentShownToSecondaryTeamDetails.sent_to: The
        email of the primary team admin the request was sent to.
    """

    __slots__ = [
        '_sent_to_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 sent_to=None):
        self._sent_to_value = bb.NOT_SET
        if sent_to is not None:
            self.sent_to = sent_to

    # Instance attribute type: str (validator is set below)
    sent_to = bb.Attribute("sent_to")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestSentShownToSecondaryTeamDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestSentShownToSecondaryTeamDetails_validator = bv.Struct(TeamMergeRequestSentShownToSecondaryTeamDetails)

class TeamMergeRequestSentShownToSecondaryTeamType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeRequestSentShownToSecondaryTeamType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeRequestSentShownToSecondaryTeamType_validator = bv.Struct(TeamMergeRequestSentShownToSecondaryTeamType)

class TeamMergeToDetails(bb.Struct):
    """
    Merged this team into another team.

    :ivar team_log.TeamMergeToDetails.team_name: The name of the team that this
        team was merged into.
    """

    __slots__ = [
        '_team_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team_name=None):
        self._team_name_value = bb.NOT_SET
        if team_name is not None:
            self.team_name = team_name

    # Instance attribute type: str (validator is set below)
    team_name = bb.Attribute("team_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeToDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeToDetails_validator = bv.Struct(TeamMergeToDetails)

class TeamMergeToType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamMergeToType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamMergeToType_validator = bv.Struct(TeamMergeToType)

class TeamName(bb.Struct):
    """
    Team name details

    :ivar team_log.TeamName.team_display_name: Team's display name.
    :ivar team_log.TeamName.team_legal_name: Team's legal name.
    """

    __slots__ = [
        '_team_display_name_value',
        '_team_legal_name_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 team_display_name=None,
                 team_legal_name=None):
        self._team_display_name_value = bb.NOT_SET
        self._team_legal_name_value = bb.NOT_SET
        if team_display_name is not None:
            self.team_display_name = team_display_name
        if team_legal_name is not None:
            self.team_legal_name = team_legal_name

    # Instance attribute type: str (validator is set below)
    team_display_name = bb.Attribute("team_display_name")

    # Instance attribute type: str (validator is set below)
    team_legal_name = bb.Attribute("team_legal_name")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamName, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamName_validator = bv.Struct(TeamName)

class TeamProfileAddBackgroundDetails(bb.Struct):
    """
    Added team background to display on shared link headers.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileAddBackgroundDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileAddBackgroundDetails_validator = bv.Struct(TeamProfileAddBackgroundDetails)

class TeamProfileAddBackgroundType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileAddBackgroundType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileAddBackgroundType_validator = bv.Struct(TeamProfileAddBackgroundType)

class TeamProfileAddLogoDetails(bb.Struct):
    """
    Added team logo to display on shared link headers.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileAddLogoDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileAddLogoDetails_validator = bv.Struct(TeamProfileAddLogoDetails)

class TeamProfileAddLogoType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileAddLogoType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileAddLogoType_validator = bv.Struct(TeamProfileAddLogoType)

class TeamProfileChangeBackgroundDetails(bb.Struct):
    """
    Changed team background displayed on shared link headers.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeBackgroundDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeBackgroundDetails_validator = bv.Struct(TeamProfileChangeBackgroundDetails)

class TeamProfileChangeBackgroundType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeBackgroundType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeBackgroundType_validator = bv.Struct(TeamProfileChangeBackgroundType)

class TeamProfileChangeDefaultLanguageDetails(bb.Struct):
    """
    Changed default language for team.

    :ivar team_log.TeamProfileChangeDefaultLanguageDetails.new_value: New team's
        default language.
    :ivar team_log.TeamProfileChangeDefaultLanguageDetails.previous_value:
        Previous team's default language.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeDefaultLanguageDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeDefaultLanguageDetails_validator = bv.Struct(TeamProfileChangeDefaultLanguageDetails)

class TeamProfileChangeDefaultLanguageType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeDefaultLanguageType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeDefaultLanguageType_validator = bv.Struct(TeamProfileChangeDefaultLanguageType)

class TeamProfileChangeLogoDetails(bb.Struct):
    """
    Changed team logo displayed on shared link headers.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeLogoDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeLogoDetails_validator = bv.Struct(TeamProfileChangeLogoDetails)

class TeamProfileChangeLogoType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeLogoType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeLogoType_validator = bv.Struct(TeamProfileChangeLogoType)

class TeamProfileChangeNameDetails(bb.Struct):
    """
    Changed team name.

    :ivar team_log.TeamProfileChangeNameDetails.previous_value: Previous teams
        name. Might be missing due to historical data gap.
    :ivar team_log.TeamProfileChangeNameDetails.new_value: New team name.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: TeamName (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    # Instance attribute type: TeamName (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeNameDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeNameDetails_validator = bv.Struct(TeamProfileChangeNameDetails)

class TeamProfileChangeNameType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileChangeNameType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileChangeNameType_validator = bv.Struct(TeamProfileChangeNameType)

class TeamProfileRemoveBackgroundDetails(bb.Struct):
    """
    Removed team background displayed on shared link headers.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileRemoveBackgroundDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileRemoveBackgroundDetails_validator = bv.Struct(TeamProfileRemoveBackgroundDetails)

class TeamProfileRemoveBackgroundType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileRemoveBackgroundType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileRemoveBackgroundType_validator = bv.Struct(TeamProfileRemoveBackgroundType)

class TeamProfileRemoveLogoDetails(bb.Struct):
    """
    Removed team logo displayed on shared link headers.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileRemoveLogoDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileRemoveLogoDetails_validator = bv.Struct(TeamProfileRemoveLogoDetails)

class TeamProfileRemoveLogoType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamProfileRemoveLogoType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamProfileRemoveLogoType_validator = bv.Struct(TeamProfileRemoveLogoType)

class TeamSelectiveSyncPolicy(bb.Union):
    """
    Policy for controlling whether team selective sync is enabled for team.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSelectiveSyncPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSelectiveSyncPolicy_validator = bv.Union(TeamSelectiveSyncPolicy)

class TeamSelectiveSyncPolicyChangedDetails(bb.Struct):
    """
    Enabled/disabled Team Selective Sync for team.

    :ivar team_log.TeamSelectiveSyncPolicyChangedDetails.new_value: New Team
        Selective Sync policy.
    :ivar team_log.TeamSelectiveSyncPolicyChangedDetails.previous_value:
        Previous Team Selective Sync policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: TeamSelectiveSyncPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: TeamSelectiveSyncPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSelectiveSyncPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSelectiveSyncPolicyChangedDetails_validator = bv.Struct(TeamSelectiveSyncPolicyChangedDetails)

class TeamSelectiveSyncPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSelectiveSyncPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSelectiveSyncPolicyChangedType_validator = bv.Struct(TeamSelectiveSyncPolicyChangedType)

class TeamSelectiveSyncSettingsChangedDetails(bb.Struct):
    """
    Changed sync default.

    :ivar team_log.TeamSelectiveSyncSettingsChangedDetails.previous_value:
        Previous value.
    :ivar team_log.TeamSelectiveSyncSettingsChangedDetails.new_value: New value.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: files.SyncSetting (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: files.SyncSetting (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSelectiveSyncSettingsChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSelectiveSyncSettingsChangedDetails_validator = bv.Struct(TeamSelectiveSyncSettingsChangedDetails)

class TeamSelectiveSyncSettingsChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSelectiveSyncSettingsChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSelectiveSyncSettingsChangedType_validator = bv.Struct(TeamSelectiveSyncSettingsChangedType)

class TeamSharingWhitelistSubjectsChangedDetails(bb.Struct):
    """
    Edited the approved list for sharing externally.

    :ivar
        team_log.TeamSharingWhitelistSubjectsChangedDetails.added_whitelist_subjects:
        Domains or emails added to the approved list for sharing externally.
    :ivar
        team_log.TeamSharingWhitelistSubjectsChangedDetails.removed_whitelist_subjects:
        Domains or emails removed from the approved list for sharing externally.
    """

    __slots__ = [
        '_added_whitelist_subjects_value',
        '_removed_whitelist_subjects_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 added_whitelist_subjects=None,
                 removed_whitelist_subjects=None):
        self._added_whitelist_subjects_value = bb.NOT_SET
        self._removed_whitelist_subjects_value = bb.NOT_SET
        if added_whitelist_subjects is not None:
            self.added_whitelist_subjects = added_whitelist_subjects
        if removed_whitelist_subjects is not None:
            self.removed_whitelist_subjects = removed_whitelist_subjects

    # Instance attribute type: list of [str] (validator is set below)
    added_whitelist_subjects = bb.Attribute("added_whitelist_subjects")

    # Instance attribute type: list of [str] (validator is set below)
    removed_whitelist_subjects = bb.Attribute("removed_whitelist_subjects")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSharingWhitelistSubjectsChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSharingWhitelistSubjectsChangedDetails_validator = bv.Struct(TeamSharingWhitelistSubjectsChangedDetails)

class TeamSharingWhitelistSubjectsChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TeamSharingWhitelistSubjectsChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

TeamSharingWhitelistSubjectsChangedType_validator = bv.Struct(TeamSharingWhitelistSubjectsChangedType)

class TfaAddBackupPhoneDetails(bb.Struct):
    """
    Added backup phone for two-step verification.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaAddBackupPhoneDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaAddBackupPhoneDetails_validator = bv.Struct(TfaAddBackupPhoneDetails)

class TfaAddBackupPhoneType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaAddBackupPhoneType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaAddBackupPhoneType_validator = bv.Struct(TfaAddBackupPhoneType)

class TfaAddExceptionDetails(bb.Struct):
    """
    Added members to two factor authentication exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaAddExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaAddExceptionDetails_validator = bv.Struct(TfaAddExceptionDetails)

class TfaAddExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaAddExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaAddExceptionType_validator = bv.Struct(TfaAddExceptionType)

class TfaAddSecurityKeyDetails(bb.Struct):
    """
    Added security key for two-step verification.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaAddSecurityKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaAddSecurityKeyDetails_validator = bv.Struct(TfaAddSecurityKeyDetails)

class TfaAddSecurityKeyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaAddSecurityKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaAddSecurityKeyType_validator = bv.Struct(TfaAddSecurityKeyType)

class TfaChangeBackupPhoneDetails(bb.Struct):
    """
    Changed backup phone for two-step verification.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaChangeBackupPhoneDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaChangeBackupPhoneDetails_validator = bv.Struct(TfaChangeBackupPhoneDetails)

class TfaChangeBackupPhoneType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaChangeBackupPhoneType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaChangeBackupPhoneType_validator = bv.Struct(TfaChangeBackupPhoneType)

class TfaChangePolicyDetails(bb.Struct):
    """
    Changed two-step verification setting for team.

    :ivar team_log.TfaChangePolicyDetails.new_value: New change policy.
    :ivar team_log.TfaChangePolicyDetails.previous_value: Previous change
        policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: team_policies.TwoStepVerificationPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: team_policies.TwoStepVerificationPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaChangePolicyDetails_validator = bv.Struct(TfaChangePolicyDetails)

class TfaChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaChangePolicyType_validator = bv.Struct(TfaChangePolicyType)

class TfaChangeStatusDetails(bb.Struct):
    """
    Enabled/disabled/changed two-step verification setting.

    :ivar team_log.TfaChangeStatusDetails.new_value: The new two factor
        authentication configuration.
    :ivar team_log.TfaChangeStatusDetails.previous_value: The previous two
        factor authentication configuration. Might be missing due to historical
        data gap.
    :ivar team_log.TfaChangeStatusDetails.used_rescue_code: Used two factor
        authentication rescue code. This flag is relevant when the two factor
        authentication configuration is disabled.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
        '_used_rescue_code_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None,
                 used_rescue_code=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        self._used_rescue_code_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value
        if used_rescue_code is not None:
            self.used_rescue_code = used_rescue_code

    # Instance attribute type: TfaConfiguration (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: TfaConfiguration (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    # Instance attribute type: bool (validator is set below)
    used_rescue_code = bb.Attribute("used_rescue_code", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaChangeStatusDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaChangeStatusDetails_validator = bv.Struct(TfaChangeStatusDetails)

class TfaChangeStatusType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaChangeStatusType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaChangeStatusType_validator = bv.Struct(TfaChangeStatusType)

class TfaConfiguration(bb.Union):
    """
    Two factor authentication configuration. Note: the enabled option is
    deprecated.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    authenticator = None
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    sms = None
    # Attribute is overwritten below the class definition
    other = None

    def is_authenticator(self):
        """
        Check if the union tag is ``authenticator``.

        :rtype: bool
        """
        return self._tag == 'authenticator'

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_sms(self):
        """
        Check if the union tag is ``sms``.

        :rtype: bool
        """
        return self._tag == 'sms'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaConfiguration, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaConfiguration_validator = bv.Union(TfaConfiguration)

class TfaRemoveBackupPhoneDetails(bb.Struct):
    """
    Removed backup phone for two-step verification.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaRemoveBackupPhoneDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaRemoveBackupPhoneDetails_validator = bv.Struct(TfaRemoveBackupPhoneDetails)

class TfaRemoveBackupPhoneType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaRemoveBackupPhoneType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaRemoveBackupPhoneType_validator = bv.Struct(TfaRemoveBackupPhoneType)

class TfaRemoveExceptionDetails(bb.Struct):
    """
    Removed members from two factor authentication exception list.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaRemoveExceptionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaRemoveExceptionDetails_validator = bv.Struct(TfaRemoveExceptionDetails)

class TfaRemoveExceptionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaRemoveExceptionType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaRemoveExceptionType_validator = bv.Struct(TfaRemoveExceptionType)

class TfaRemoveSecurityKeyDetails(bb.Struct):
    """
    Removed security key for two-step verification.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaRemoveSecurityKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaRemoveSecurityKeyDetails_validator = bv.Struct(TfaRemoveSecurityKeyDetails)

class TfaRemoveSecurityKeyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaRemoveSecurityKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaRemoveSecurityKeyType_validator = bv.Struct(TfaRemoveSecurityKeyType)

class TfaResetDetails(bb.Struct):
    """
    Reset two-step verification for team member.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaResetDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaResetDetails_validator = bv.Struct(TfaResetDetails)

class TfaResetType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TfaResetType, self)._process_custom_annotations(annotation_type, field_path, processor)

TfaResetType_validator = bv.Struct(TfaResetType)

class TimeUnit(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    days = None
    # Attribute is overwritten below the class definition
    hours = None
    # Attribute is overwritten below the class definition
    milliseconds = None
    # Attribute is overwritten below the class definition
    minutes = None
    # Attribute is overwritten below the class definition
    months = None
    # Attribute is overwritten below the class definition
    seconds = None
    # Attribute is overwritten below the class definition
    weeks = None
    # Attribute is overwritten below the class definition
    years = None
    # Attribute is overwritten below the class definition
    other = None

    def is_days(self):
        """
        Check if the union tag is ``days``.

        :rtype: bool
        """
        return self._tag == 'days'

    def is_hours(self):
        """
        Check if the union tag is ``hours``.

        :rtype: bool
        """
        return self._tag == 'hours'

    def is_milliseconds(self):
        """
        Check if the union tag is ``milliseconds``.

        :rtype: bool
        """
        return self._tag == 'milliseconds'

    def is_minutes(self):
        """
        Check if the union tag is ``minutes``.

        :rtype: bool
        """
        return self._tag == 'minutes'

    def is_months(self):
        """
        Check if the union tag is ``months``.

        :rtype: bool
        """
        return self._tag == 'months'

    def is_seconds(self):
        """
        Check if the union tag is ``seconds``.

        :rtype: bool
        """
        return self._tag == 'seconds'

    def is_weeks(self):
        """
        Check if the union tag is ``weeks``.

        :rtype: bool
        """
        return self._tag == 'weeks'

    def is_years(self):
        """
        Check if the union tag is ``years``.

        :rtype: bool
        """
        return self._tag == 'years'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TimeUnit, self)._process_custom_annotations(annotation_type, field_path, processor)

TimeUnit_validator = bv.Union(TimeUnit)

class TrustedNonTeamMemberLogInfo(UserLogInfo):
    """
    User that is not a member of the team but considered trusted.

    :ivar team_log.TrustedNonTeamMemberLogInfo.trusted_non_team_member_type:
        Indicates the type of the member of a trusted team.
    :ivar team_log.TrustedNonTeamMemberLogInfo.team: Details about this user's
        trusted team.
    """

    __slots__ = [
        '_trusted_non_team_member_type_value',
        '_team_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 trusted_non_team_member_type=None,
                 account_id=None,
                 display_name=None,
                 email=None,
                 team=None):
        super(TrustedNonTeamMemberLogInfo, self).__init__(account_id,
                                                          display_name,
                                                          email)
        self._trusted_non_team_member_type_value = bb.NOT_SET
        self._team_value = bb.NOT_SET
        if trusted_non_team_member_type is not None:
            self.trusted_non_team_member_type = trusted_non_team_member_type
        if team is not None:
            self.team = team

    # Instance attribute type: TrustedNonTeamMemberType (validator is set below)
    trusted_non_team_member_type = bb.Attribute("trusted_non_team_member_type", user_defined=True)

    # Instance attribute type: TeamLogInfo (validator is set below)
    team = bb.Attribute("team", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TrustedNonTeamMemberLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

TrustedNonTeamMemberLogInfo_validator = bv.Struct(TrustedNonTeamMemberLogInfo)

class TrustedNonTeamMemberType(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    enterprise_admin = None
    # Attribute is overwritten below the class definition
    multi_instance_admin = None
    # Attribute is overwritten below the class definition
    other = None

    def is_enterprise_admin(self):
        """
        Check if the union tag is ``enterprise_admin``.

        :rtype: bool
        """
        return self._tag == 'enterprise_admin'

    def is_multi_instance_admin(self):
        """
        Check if the union tag is ``multi_instance_admin``.

        :rtype: bool
        """
        return self._tag == 'multi_instance_admin'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TrustedNonTeamMemberType, self)._process_custom_annotations(annotation_type, field_path, processor)

TrustedNonTeamMemberType_validator = bv.Union(TrustedNonTeamMemberType)

class TrustedTeamsRequestAction(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    accepted = None
    # Attribute is overwritten below the class definition
    declined = None
    # Attribute is overwritten below the class definition
    expired = None
    # Attribute is overwritten below the class definition
    invited = None
    # Attribute is overwritten below the class definition
    revoked = None
    # Attribute is overwritten below the class definition
    other = None

    def is_accepted(self):
        """
        Check if the union tag is ``accepted``.

        :rtype: bool
        """
        return self._tag == 'accepted'

    def is_declined(self):
        """
        Check if the union tag is ``declined``.

        :rtype: bool
        """
        return self._tag == 'declined'

    def is_expired(self):
        """
        Check if the union tag is ``expired``.

        :rtype: bool
        """
        return self._tag == 'expired'

    def is_invited(self):
        """
        Check if the union tag is ``invited``.

        :rtype: bool
        """
        return self._tag == 'invited'

    def is_revoked(self):
        """
        Check if the union tag is ``revoked``.

        :rtype: bool
        """
        return self._tag == 'revoked'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TrustedTeamsRequestAction, self)._process_custom_annotations(annotation_type, field_path, processor)

TrustedTeamsRequestAction_validator = bv.Union(TrustedTeamsRequestAction)

class TrustedTeamsRequestState(bb.Union):
    """
    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    invited = None
    # Attribute is overwritten below the class definition
    linked = None
    # Attribute is overwritten below the class definition
    unlinked = None
    # Attribute is overwritten below the class definition
    other = None

    def is_invited(self):
        """
        Check if the union tag is ``invited``.

        :rtype: bool
        """
        return self._tag == 'invited'

    def is_linked(self):
        """
        Check if the union tag is ``linked``.

        :rtype: bool
        """
        return self._tag == 'linked'

    def is_unlinked(self):
        """
        Check if the union tag is ``unlinked``.

        :rtype: bool
        """
        return self._tag == 'unlinked'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TrustedTeamsRequestState, self)._process_custom_annotations(annotation_type, field_path, processor)

TrustedTeamsRequestState_validator = bv.Union(TrustedTeamsRequestState)

class TwoAccountChangePolicyDetails(bb.Struct):
    """
    Enabled/disabled option for members to link personal Dropbox account and
    team account to same computer.

    :ivar team_log.TwoAccountChangePolicyDetails.new_value: New two account
        policy.
    :ivar team_log.TwoAccountChangePolicyDetails.previous_value: Previous two
        account policy. Might be missing due to historical data gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: TwoAccountPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: TwoAccountPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TwoAccountChangePolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

TwoAccountChangePolicyDetails_validator = bv.Struct(TwoAccountChangePolicyDetails)

class TwoAccountChangePolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TwoAccountChangePolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

TwoAccountChangePolicyType_validator = bv.Struct(TwoAccountChangePolicyType)

class TwoAccountPolicy(bb.Union):
    """
    Policy for pairing personal account to work account

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(TwoAccountPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

TwoAccountPolicy_validator = bv.Union(TwoAccountPolicy)

class UndoNamingConventionDetails(bb.Struct):
    """
    Reverted naming convention.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UndoNamingConventionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

UndoNamingConventionDetails_validator = bv.Struct(UndoNamingConventionDetails)

class UndoNamingConventionType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UndoNamingConventionType, self)._process_custom_annotations(annotation_type, field_path, processor)

UndoNamingConventionType_validator = bv.Struct(UndoNamingConventionType)

class UndoOrganizeFolderWithTidyDetails(bb.Struct):
    """
    Removed multi-file organize.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self):
        pass

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UndoOrganizeFolderWithTidyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

UndoOrganizeFolderWithTidyDetails_validator = bv.Struct(UndoOrganizeFolderWithTidyDetails)

class UndoOrganizeFolderWithTidyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UndoOrganizeFolderWithTidyType, self)._process_custom_annotations(annotation_type, field_path, processor)

UndoOrganizeFolderWithTidyType_validator = bv.Struct(UndoOrganizeFolderWithTidyType)

class UserLinkedAppLogInfo(AppLogInfo):
    """
    User linked app
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 app_id=None,
                 display_name=None):
        super(UserLinkedAppLogInfo, self).__init__(app_id,
                                                   display_name)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserLinkedAppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

UserLinkedAppLogInfo_validator = bv.Struct(UserLinkedAppLogInfo)

class UserNameLogInfo(bb.Struct):
    """
    User's name logged information

    :ivar team_log.UserNameLogInfo.given_name: Given name.
    :ivar team_log.UserNameLogInfo.surname: Surname.
    :ivar team_log.UserNameLogInfo.locale: Locale. Might be missing due to
        historical data gap.
    """

    __slots__ = [
        '_given_name_value',
        '_surname_value',
        '_locale_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 given_name=None,
                 surname=None,
                 locale=None):
        self._given_name_value = bb.NOT_SET
        self._surname_value = bb.NOT_SET
        self._locale_value = bb.NOT_SET
        if given_name is not None:
            self.given_name = given_name
        if surname is not None:
            self.surname = surname
        if locale is not None:
            self.locale = locale

    # Instance attribute type: str (validator is set below)
    given_name = bb.Attribute("given_name")

    # Instance attribute type: str (validator is set below)
    surname = bb.Attribute("surname")

    # Instance attribute type: str (validator is set below)
    locale = bb.Attribute("locale", nullable=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserNameLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

UserNameLogInfo_validator = bv.Struct(UserNameLogInfo)

class UserOrTeamLinkedAppLogInfo(AppLogInfo):
    """
    User or team linked app. Used when linked type is missing due to historical
    data gap.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 app_id=None,
                 display_name=None):
        super(UserOrTeamLinkedAppLogInfo, self).__init__(app_id,
                                                         display_name)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserOrTeamLinkedAppLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

UserOrTeamLinkedAppLogInfo_validator = bv.Struct(UserOrTeamLinkedAppLogInfo)

class UserTagsAddedDetails(bb.Struct):
    """
    Tagged a file.

    :ivar team_log.UserTagsAddedDetails.values: values.
    """

    __slots__ = [
        '_values_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 values=None):
        self._values_value = bb.NOT_SET
        if values is not None:
            self.values = values

    # Instance attribute type: list of [str] (validator is set below)
    values = bb.Attribute("values")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserTagsAddedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

UserTagsAddedDetails_validator = bv.Struct(UserTagsAddedDetails)

class UserTagsAddedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserTagsAddedType, self)._process_custom_annotations(annotation_type, field_path, processor)

UserTagsAddedType_validator = bv.Struct(UserTagsAddedType)

class UserTagsRemovedDetails(bb.Struct):
    """
    Removed tags.

    :ivar team_log.UserTagsRemovedDetails.values: values.
    """

    __slots__ = [
        '_values_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 values=None):
        self._values_value = bb.NOT_SET
        if values is not None:
            self.values = values

    # Instance attribute type: list of [str] (validator is set below)
    values = bb.Attribute("values")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserTagsRemovedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

UserTagsRemovedDetails_validator = bv.Struct(UserTagsRemovedDetails)

class UserTagsRemovedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(UserTagsRemovedType, self)._process_custom_annotations(annotation_type, field_path, processor)

UserTagsRemovedType_validator = bv.Struct(UserTagsRemovedType)

class ViewerInfoPolicyChangedDetails(bb.Struct):
    """
    Changed team policy for viewer info.

    :ivar team_log.ViewerInfoPolicyChangedDetails.previous_value: Previous
        Viewer Info policy.
    :ivar team_log.ViewerInfoPolicyChangedDetails.new_value: New Viewer Info
        policy.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: PassPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    # Instance attribute type: PassPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ViewerInfoPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

ViewerInfoPolicyChangedDetails_validator = bv.Struct(ViewerInfoPolicyChangedDetails)

class ViewerInfoPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(ViewerInfoPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

ViewerInfoPolicyChangedType_validator = bv.Struct(ViewerInfoPolicyChangedType)

class WatermarkingPolicy(bb.Union):
    """
    Policy for controlling team access to watermarking feature

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    disabled = None
    # Attribute is overwritten below the class definition
    enabled = None
    # Attribute is overwritten below the class definition
    other = None

    def is_disabled(self):
        """
        Check if the union tag is ``disabled``.

        :rtype: bool
        """
        return self._tag == 'disabled'

    def is_enabled(self):
        """
        Check if the union tag is ``enabled``.

        :rtype: bool
        """
        return self._tag == 'enabled'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WatermarkingPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

WatermarkingPolicy_validator = bv.Union(WatermarkingPolicy)

class WatermarkingPolicyChangedDetails(bb.Struct):
    """
    Changed watermarking policy for team.

    :ivar team_log.WatermarkingPolicyChangedDetails.new_value: New watermarking
        policy.
    :ivar team_log.WatermarkingPolicyChangedDetails.previous_value: Previous
        watermarking policy.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: WatermarkingPolicy (validator is set below)
    new_value = bb.Attribute("new_value", user_defined=True)

    # Instance attribute type: WatermarkingPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WatermarkingPolicyChangedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

WatermarkingPolicyChangedDetails_validator = bv.Struct(WatermarkingPolicyChangedDetails)

class WatermarkingPolicyChangedType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WatermarkingPolicyChangedType, self)._process_custom_annotations(annotation_type, field_path, processor)

WatermarkingPolicyChangedType_validator = bv.Struct(WatermarkingPolicyChangedType)

class WebDeviceSessionLogInfo(DeviceSessionLogInfo):
    """
    Information on active web sessions

    :ivar team_log.WebDeviceSessionLogInfo.session_info: Web session unique id.
    :ivar team_log.WebDeviceSessionLogInfo.user_agent: Information on the
        hosting device.
    :ivar team_log.WebDeviceSessionLogInfo.os: Information on the hosting
        operating system.
    :ivar team_log.WebDeviceSessionLogInfo.browser: Information on the browser
        used for this web session.
    """

    __slots__ = [
        '_session_info_value',
        '_user_agent_value',
        '_os_value',
        '_browser_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 user_agent=None,
                 os=None,
                 browser=None,
                 ip_address=None,
                 created=None,
                 updated=None,
                 session_info=None):
        super(WebDeviceSessionLogInfo, self).__init__(ip_address,
                                                      created,
                                                      updated)
        self._session_info_value = bb.NOT_SET
        self._user_agent_value = bb.NOT_SET
        self._os_value = bb.NOT_SET
        self._browser_value = bb.NOT_SET
        if session_info is not None:
            self.session_info = session_info
        if user_agent is not None:
            self.user_agent = user_agent
        if os is not None:
            self.os = os
        if browser is not None:
            self.browser = browser

    # Instance attribute type: WebSessionLogInfo (validator is set below)
    session_info = bb.Attribute("session_info", nullable=True, user_defined=True)

    # Instance attribute type: str (validator is set below)
    user_agent = bb.Attribute("user_agent")

    # Instance attribute type: str (validator is set below)
    os = bb.Attribute("os")

    # Instance attribute type: str (validator is set below)
    browser = bb.Attribute("browser")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebDeviceSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

WebDeviceSessionLogInfo_validator = bv.Struct(WebDeviceSessionLogInfo)

class WebSessionLogInfo(SessionLogInfo):
    """
    Web session.
    """

    __slots__ = [
    ]

    _has_required_fields = False

    def __init__(self,
                 session_id=None):
        super(WebSessionLogInfo, self).__init__(session_id)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionLogInfo, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionLogInfo_validator = bv.Struct(WebSessionLogInfo)

class WebSessionsChangeActiveSessionLimitDetails(bb.Struct):
    """
    Changed limit on active sessions per member.

    :ivar team_log.WebSessionsChangeActiveSessionLimitDetails.previous_value:
        Previous max number of concurrent active sessions policy.
    :ivar team_log.WebSessionsChangeActiveSessionLimitDetails.new_value: New max
        number of concurrent active sessions policy.
    """

    __slots__ = [
        '_previous_value_value',
        '_new_value_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 previous_value=None,
                 new_value=None):
        self._previous_value_value = bb.NOT_SET
        self._new_value_value = bb.NOT_SET
        if previous_value is not None:
            self.previous_value = previous_value
        if new_value is not None:
            self.new_value = new_value

    # Instance attribute type: str (validator is set below)
    previous_value = bb.Attribute("previous_value")

    # Instance attribute type: str (validator is set below)
    new_value = bb.Attribute("new_value")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsChangeActiveSessionLimitDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsChangeActiveSessionLimitDetails_validator = bv.Struct(WebSessionsChangeActiveSessionLimitDetails)

class WebSessionsChangeActiveSessionLimitType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsChangeActiveSessionLimitType, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsChangeActiveSessionLimitType_validator = bv.Struct(WebSessionsChangeActiveSessionLimitType)

class WebSessionsChangeFixedLengthPolicyDetails(bb.Struct):
    """
    Changed how long members can stay signed in to Dropbox.com.

    :ivar team_log.WebSessionsChangeFixedLengthPolicyDetails.new_value: New
        session length policy. Might be missing due to historical data gap.
    :ivar team_log.WebSessionsChangeFixedLengthPolicyDetails.previous_value:
        Previous session length policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: WebSessionsFixedLengthPolicy (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: WebSessionsFixedLengthPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsChangeFixedLengthPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsChangeFixedLengthPolicyDetails_validator = bv.Struct(WebSessionsChangeFixedLengthPolicyDetails)

class WebSessionsChangeFixedLengthPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsChangeFixedLengthPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsChangeFixedLengthPolicyType_validator = bv.Struct(WebSessionsChangeFixedLengthPolicyType)

class WebSessionsChangeIdleLengthPolicyDetails(bb.Struct):
    """
    Changed how long team members can be idle while signed in to Dropbox.com.

    :ivar team_log.WebSessionsChangeIdleLengthPolicyDetails.new_value: New idle
        length policy. Might be missing due to historical data gap.
    :ivar team_log.WebSessionsChangeIdleLengthPolicyDetails.previous_value:
        Previous idle length policy. Might be missing due to historical data
        gap.
    """

    __slots__ = [
        '_new_value_value',
        '_previous_value_value',
    ]

    _has_required_fields = False

    def __init__(self,
                 new_value=None,
                 previous_value=None):
        self._new_value_value = bb.NOT_SET
        self._previous_value_value = bb.NOT_SET
        if new_value is not None:
            self.new_value = new_value
        if previous_value is not None:
            self.previous_value = previous_value

    # Instance attribute type: WebSessionsIdleLengthPolicy (validator is set below)
    new_value = bb.Attribute("new_value", nullable=True, user_defined=True)

    # Instance attribute type: WebSessionsIdleLengthPolicy (validator is set below)
    previous_value = bb.Attribute("previous_value", nullable=True, user_defined=True)

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsChangeIdleLengthPolicyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsChangeIdleLengthPolicyDetails_validator = bv.Struct(WebSessionsChangeIdleLengthPolicyDetails)

class WebSessionsChangeIdleLengthPolicyType(bb.Struct):

    __slots__ = [
        '_description_value',
    ]

    _has_required_fields = True

    def __init__(self,
                 description=None):
        self._description_value = bb.NOT_SET
        if description is not None:
            self.description = description

    # Instance attribute type: str (validator is set below)
    description = bb.Attribute("description")

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsChangeIdleLengthPolicyType, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsChangeIdleLengthPolicyType_validator = bv.Struct(WebSessionsChangeIdleLengthPolicyType)

class WebSessionsFixedLengthPolicy(bb.Union):
    """
    Web sessions fixed length policy.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar DurationLogInfo WebSessionsFixedLengthPolicy.defined: Defined fixed
        session length.
    :ivar team_log.WebSessionsFixedLengthPolicy.undefined: Undefined fixed
        session length.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    undefined = None
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def defined(cls, val):
        """
        Create an instance of this class set to the ``defined`` tag with value
        ``val``.

        :param DurationLogInfo val:
        :rtype: WebSessionsFixedLengthPolicy
        """
        return cls('defined', val)

    def is_defined(self):
        """
        Check if the union tag is ``defined``.

        :rtype: bool
        """
        return self._tag == 'defined'

    def is_undefined(self):
        """
        Check if the union tag is ``undefined``.

        :rtype: bool
        """
        return self._tag == 'undefined'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_defined(self):
        """
        Defined fixed session length.

        Only call this if :meth:`is_defined` is true.

        :rtype: DurationLogInfo
        """
        if not self.is_defined():
            raise AttributeError("tag 'defined' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsFixedLengthPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsFixedLengthPolicy_validator = bv.Union(WebSessionsFixedLengthPolicy)

class WebSessionsIdleLengthPolicy(bb.Union):
    """
    Web sessions idle length policy.

    This class acts as a tagged union. Only one of the ``is_*`` methods will
    return true. To get the associated value of a tag (if one exists), use the
    corresponding ``get_*`` method.

    :ivar DurationLogInfo WebSessionsIdleLengthPolicy.defined: Defined idle
        session length.
    :ivar team_log.WebSessionsIdleLengthPolicy.undefined: Undefined idle session
        length.
    """

    _catch_all = 'other'
    # Attribute is overwritten below the class definition
    undefined = None
    # Attribute is overwritten below the class definition
    other = None

    @classmethod
    def defined(cls, val):
        """
        Create an instance of this class set to the ``defined`` tag with value
        ``val``.

        :param DurationLogInfo val:
        :rtype: WebSessionsIdleLengthPolicy
        """
        return cls('defined', val)

    def is_defined(self):
        """
        Check if the union tag is ``defined``.

        :rtype: bool
        """
        return self._tag == 'defined'

    def is_undefined(self):
        """
        Check if the union tag is ``undefined``.

        :rtype: bool
        """
        return self._tag == 'undefined'

    def is_other(self):
        """
        Check if the union tag is ``other``.

        :rtype: bool
        """
        return self._tag == 'other'

    def get_defined(self):
        """
        Defined idle session length.

        Only call this if :meth:`is_defined` is true.

        :rtype: DurationLogInfo
        """
        if not self.is_defined():
            raise AttributeError("tag 'defined' not set")
        return self._value

    def _process_custom_annotations(self, annotation_type, field_path, processor):
        super(WebSessionsIdleLengthPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)

WebSessionsIdleLengthPolicy_validator = bv.Union(WebSessionsIdleLengthPolicy)

AppId_validator = bv.String()
EmailAddress_validator = bv.String(max_length=255)
FilePath_validator = bv.String()
IpAddress_validator = bv.String()
NamespaceId_validator = bv.String()
RequestId_validator = bv.String()
TeamEventList_validator = bv.List(TeamEvent_validator)
AccessMethodLogInfo._admin_console_validator = WebSessionLogInfo_validator
AccessMethodLogInfo._api_validator = ApiSessionLogInfo_validator
AccessMethodLogInfo._content_manager_validator = WebSessionLogInfo_validator
AccessMethodLogInfo._end_user_validator = SessionLogInfo_validator
AccessMethodLogInfo._enterprise_console_validator = WebSessionLogInfo_validator
AccessMethodLogInfo._sign_in_as_validator = WebSessionLogInfo_validator
AccessMethodLogInfo._other_validator = bv.Void()
AccessMethodLogInfo._tagmap = {
    'admin_console': AccessMethodLogInfo._admin_console_validator,
    'api': AccessMethodLogInfo._api_validator,
    'content_manager': AccessMethodLogInfo._content_manager_validator,
    'end_user': AccessMethodLogInfo._end_user_validator,
    'enterprise_console': AccessMethodLogInfo._enterprise_console_validator,
    'sign_in_as': AccessMethodLogInfo._sign_in_as_validator,
    'other': AccessMethodLogInfo._other_validator,
}

AccessMethodLogInfo.other = AccessMethodLogInfo('other')

AccountCaptureAvailability._available_validator = bv.Void()
AccountCaptureAvailability._unavailable_validator = bv.Void()
AccountCaptureAvailability._other_validator = bv.Void()
AccountCaptureAvailability._tagmap = {
    'available': AccountCaptureAvailability._available_validator,
    'unavailable': AccountCaptureAvailability._unavailable_validator,
    'other': AccountCaptureAvailability._other_validator,
}

AccountCaptureAvailability.available = AccountCaptureAvailability('available')
AccountCaptureAvailability.unavailable = AccountCaptureAvailability('unavailable')
AccountCaptureAvailability.other = AccountCaptureAvailability('other')

AccountCaptureChangeAvailabilityDetails.new_value.validator = AccountCaptureAvailability_validator
AccountCaptureChangeAvailabilityDetails.previous_value.validator = bv.Nullable(AccountCaptureAvailability_validator)
AccountCaptureChangeAvailabilityDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
AccountCaptureChangeAvailabilityDetails._all_fields_ = [
    ('new_value', AccountCaptureChangeAvailabilityDetails.new_value.validator),
    ('previous_value', AccountCaptureChangeAvailabilityDetails.previous_value.validator),
]

AccountCaptureChangeAvailabilityType.description.validator = bv.String()
AccountCaptureChangeAvailabilityType._all_field_names_ = set(['description'])
AccountCaptureChangeAvailabilityType._all_fields_ = [('description', AccountCaptureChangeAvailabilityType.description.validator)]

AccountCaptureChangePolicyDetails.new_value.validator = AccountCapturePolicy_validator
AccountCaptureChangePolicyDetails.previous_value.validator = bv.Nullable(AccountCapturePolicy_validator)
AccountCaptureChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
AccountCaptureChangePolicyDetails._all_fields_ = [
    ('new_value', AccountCaptureChangePolicyDetails.new_value.validator),
    ('previous_value', AccountCaptureChangePolicyDetails.previous_value.validator),
]

AccountCaptureChangePolicyType.description.validator = bv.String()
AccountCaptureChangePolicyType._all_field_names_ = set(['description'])
AccountCaptureChangePolicyType._all_fields_ = [('description', AccountCaptureChangePolicyType.description.validator)]

AccountCaptureMigrateAccountDetails.domain_name.validator = bv.String()
AccountCaptureMigrateAccountDetails._all_field_names_ = set(['domain_name'])
AccountCaptureMigrateAccountDetails._all_fields_ = [('domain_name', AccountCaptureMigrateAccountDetails.domain_name.validator)]

AccountCaptureMigrateAccountType.description.validator = bv.String()
AccountCaptureMigrateAccountType._all_field_names_ = set(['description'])
AccountCaptureMigrateAccountType._all_fields_ = [('description', AccountCaptureMigrateAccountType.description.validator)]

AccountCaptureNotificationEmailsSentDetails.domain_name.validator = bv.String()
AccountCaptureNotificationEmailsSentDetails.notification_type.validator = bv.Nullable(AccountCaptureNotificationType_validator)
AccountCaptureNotificationEmailsSentDetails._all_field_names_ = set([
    'domain_name',
    'notification_type',
])
AccountCaptureNotificationEmailsSentDetails._all_fields_ = [
    ('domain_name', AccountCaptureNotificationEmailsSentDetails.domain_name.validator),
    ('notification_type', AccountCaptureNotificationEmailsSentDetails.notification_type.validator),
]

AccountCaptureNotificationEmailsSentType.description.validator = bv.String()
AccountCaptureNotificationEmailsSentType._all_field_names_ = set(['description'])
AccountCaptureNotificationEmailsSentType._all_fields_ = [('description', AccountCaptureNotificationEmailsSentType.description.validator)]

AccountCaptureNotificationType._actionable_notification_validator = bv.Void()
AccountCaptureNotificationType._proactive_warning_notification_validator = bv.Void()
AccountCaptureNotificationType._other_validator = bv.Void()
AccountCaptureNotificationType._tagmap = {
    'actionable_notification': AccountCaptureNotificationType._actionable_notification_validator,
    'proactive_warning_notification': AccountCaptureNotificationType._proactive_warning_notification_validator,
    'other': AccountCaptureNotificationType._other_validator,
}

AccountCaptureNotificationType.actionable_notification = AccountCaptureNotificationType('actionable_notification')
AccountCaptureNotificationType.proactive_warning_notification = AccountCaptureNotificationType('proactive_warning_notification')
AccountCaptureNotificationType.other = AccountCaptureNotificationType('other')

AccountCapturePolicy._all_users_validator = bv.Void()
AccountCapturePolicy._disabled_validator = bv.Void()
AccountCapturePolicy._invited_users_validator = bv.Void()
AccountCapturePolicy._other_validator = bv.Void()
AccountCapturePolicy._tagmap = {
    'all_users': AccountCapturePolicy._all_users_validator,
    'disabled': AccountCapturePolicy._disabled_validator,
    'invited_users': AccountCapturePolicy._invited_users_validator,
    'other': AccountCapturePolicy._other_validator,
}

AccountCapturePolicy.all_users = AccountCapturePolicy('all_users')
AccountCapturePolicy.disabled = AccountCapturePolicy('disabled')
AccountCapturePolicy.invited_users = AccountCapturePolicy('invited_users')
AccountCapturePolicy.other = AccountCapturePolicy('other')

AccountCaptureRelinquishAccountDetails.domain_name.validator = bv.String()
AccountCaptureRelinquishAccountDetails._all_field_names_ = set(['domain_name'])
AccountCaptureRelinquishAccountDetails._all_fields_ = [('domain_name', AccountCaptureRelinquishAccountDetails.domain_name.validator)]

AccountCaptureRelinquishAccountType.description.validator = bv.String()
AccountCaptureRelinquishAccountType._all_field_names_ = set(['description'])
AccountCaptureRelinquishAccountType._all_fields_ = [('description', AccountCaptureRelinquishAccountType.description.validator)]

AccountLockOrUnlockedDetails.previous_value.validator = AccountState_validator
AccountLockOrUnlockedDetails.new_value.validator = AccountState_validator
AccountLockOrUnlockedDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
AccountLockOrUnlockedDetails._all_fields_ = [
    ('previous_value', AccountLockOrUnlockedDetails.previous_value.validator),
    ('new_value', AccountLockOrUnlockedDetails.new_value.validator),
]

AccountLockOrUnlockedType.description.validator = bv.String()
AccountLockOrUnlockedType._all_field_names_ = set(['description'])
AccountLockOrUnlockedType._all_fields_ = [('description', AccountLockOrUnlockedType.description.validator)]

AccountState._locked_validator = bv.Void()
AccountState._unlocked_validator = bv.Void()
AccountState._other_validator = bv.Void()
AccountState._tagmap = {
    'locked': AccountState._locked_validator,
    'unlocked': AccountState._unlocked_validator,
    'other': AccountState._other_validator,
}

AccountState.locked = AccountState('locked')
AccountState.unlocked = AccountState('unlocked')
AccountState.other = AccountState('other')

ActionDetails._remove_action_validator = MemberRemoveActionType_validator
ActionDetails._team_invite_details_validator = TeamInviteDetails_validator
ActionDetails._team_join_details_validator = JoinTeamDetails_validator
ActionDetails._other_validator = bv.Void()
ActionDetails._tagmap = {
    'remove_action': ActionDetails._remove_action_validator,
    'team_invite_details': ActionDetails._team_invite_details_validator,
    'team_join_details': ActionDetails._team_join_details_validator,
    'other': ActionDetails._other_validator,
}

ActionDetails.other = ActionDetails('other')

ActorLogInfo._admin_validator = UserLogInfo_validator
ActorLogInfo._anonymous_validator = bv.Void()
ActorLogInfo._app_validator = AppLogInfo_validator
ActorLogInfo._dropbox_validator = bv.Void()
ActorLogInfo._reseller_validator = ResellerLogInfo_validator
ActorLogInfo._user_validator = UserLogInfo_validator
ActorLogInfo._other_validator = bv.Void()
ActorLogInfo._tagmap = {
    'admin': ActorLogInfo._admin_validator,
    'anonymous': ActorLogInfo._anonymous_validator,
    'app': ActorLogInfo._app_validator,
    'dropbox': ActorLogInfo._dropbox_validator,
    'reseller': ActorLogInfo._reseller_validator,
    'user': ActorLogInfo._user_validator,
    'other': ActorLogInfo._other_validator,
}

ActorLogInfo.anonymous = ActorLogInfo('anonymous')
ActorLogInfo.dropbox = ActorLogInfo('dropbox')
ActorLogInfo.other = ActorLogInfo('other')

AdminAlertCategoryEnum._account_takeover_validator = bv.Void()
AdminAlertCategoryEnum._data_loss_protection_validator = bv.Void()
AdminAlertCategoryEnum._information_governance_validator = bv.Void()
AdminAlertCategoryEnum._malware_sharing_validator = bv.Void()
AdminAlertCategoryEnum._massive_file_operation_validator = bv.Void()
AdminAlertCategoryEnum._na_validator = bv.Void()
AdminAlertCategoryEnum._threat_management_validator = bv.Void()
AdminAlertCategoryEnum._other_validator = bv.Void()
AdminAlertCategoryEnum._tagmap = {
    'account_takeover': AdminAlertCategoryEnum._account_takeover_validator,
    'data_loss_protection': AdminAlertCategoryEnum._data_loss_protection_validator,
    'information_governance': AdminAlertCategoryEnum._information_governance_validator,
    'malware_sharing': AdminAlertCategoryEnum._malware_sharing_validator,
    'massive_file_operation': AdminAlertCategoryEnum._massive_file_operation_validator,
    'na': AdminAlertCategoryEnum._na_validator,
    'threat_management': AdminAlertCategoryEnum._threat_management_validator,
    'other': AdminAlertCategoryEnum._other_validator,
}

AdminAlertCategoryEnum.account_takeover = AdminAlertCategoryEnum('account_takeover')
AdminAlertCategoryEnum.data_loss_protection = AdminAlertCategoryEnum('data_loss_protection')
AdminAlertCategoryEnum.information_governance = AdminAlertCategoryEnum('information_governance')
AdminAlertCategoryEnum.malware_sharing = AdminAlertCategoryEnum('malware_sharing')
AdminAlertCategoryEnum.massive_file_operation = AdminAlertCategoryEnum('massive_file_operation')
AdminAlertCategoryEnum.na = AdminAlertCategoryEnum('na')
AdminAlertCategoryEnum.threat_management = AdminAlertCategoryEnum('threat_management')
AdminAlertCategoryEnum.other = AdminAlertCategoryEnum('other')

AdminAlertGeneralStateEnum._active_validator = bv.Void()
AdminAlertGeneralStateEnum._dismissed_validator = bv.Void()
AdminAlertGeneralStateEnum._in_progress_validator = bv.Void()
AdminAlertGeneralStateEnum._na_validator = bv.Void()
AdminAlertGeneralStateEnum._resolved_validator = bv.Void()
AdminAlertGeneralStateEnum._other_validator = bv.Void()
AdminAlertGeneralStateEnum._tagmap = {
    'active': AdminAlertGeneralStateEnum._active_validator,
    'dismissed': AdminAlertGeneralStateEnum._dismissed_validator,
    'in_progress': AdminAlertGeneralStateEnum._in_progress_validator,
    'na': AdminAlertGeneralStateEnum._na_validator,
    'resolved': AdminAlertGeneralStateEnum._resolved_validator,
    'other': AdminAlertGeneralStateEnum._other_validator,
}

AdminAlertGeneralStateEnum.active = AdminAlertGeneralStateEnum('active')
AdminAlertGeneralStateEnum.dismissed = AdminAlertGeneralStateEnum('dismissed')
AdminAlertGeneralStateEnum.in_progress = AdminAlertGeneralStateEnum('in_progress')
AdminAlertGeneralStateEnum.na = AdminAlertGeneralStateEnum('na')
AdminAlertGeneralStateEnum.resolved = AdminAlertGeneralStateEnum('resolved')
AdminAlertGeneralStateEnum.other = AdminAlertGeneralStateEnum('other')

AdminAlertSeverityEnum._high_validator = bv.Void()
AdminAlertSeverityEnum._info_validator = bv.Void()
AdminAlertSeverityEnum._low_validator = bv.Void()
AdminAlertSeverityEnum._medium_validator = bv.Void()
AdminAlertSeverityEnum._na_validator = bv.Void()
AdminAlertSeverityEnum._other_validator = bv.Void()
AdminAlertSeverityEnum._tagmap = {
    'high': AdminAlertSeverityEnum._high_validator,
    'info': AdminAlertSeverityEnum._info_validator,
    'low': AdminAlertSeverityEnum._low_validator,
    'medium': AdminAlertSeverityEnum._medium_validator,
    'na': AdminAlertSeverityEnum._na_validator,
    'other': AdminAlertSeverityEnum._other_validator,
}

AdminAlertSeverityEnum.high = AdminAlertSeverityEnum('high')
AdminAlertSeverityEnum.info = AdminAlertSeverityEnum('info')
AdminAlertSeverityEnum.low = AdminAlertSeverityEnum('low')
AdminAlertSeverityEnum.medium = AdminAlertSeverityEnum('medium')
AdminAlertSeverityEnum.na = AdminAlertSeverityEnum('na')
AdminAlertSeverityEnum.other = AdminAlertSeverityEnum('other')

AdminAlertingAlertConfiguration.alert_state.validator = bv.Nullable(AdminAlertingAlertStatePolicy_validator)
AdminAlertingAlertConfiguration.sensitivity_level.validator = bv.Nullable(AdminAlertingAlertSensitivity_validator)
AdminAlertingAlertConfiguration.recipients_settings.validator = bv.Nullable(RecipientsConfiguration_validator)
AdminAlertingAlertConfiguration.text.validator = bv.Nullable(bv.String())
AdminAlertingAlertConfiguration.excluded_file_extensions.validator = bv.Nullable(bv.String())
AdminAlertingAlertConfiguration._all_field_names_ = set([
    'alert_state',
    'sensitivity_level',
    'recipients_settings',
    'text',
    'excluded_file_extensions',
])
AdminAlertingAlertConfiguration._all_fields_ = [
    ('alert_state', AdminAlertingAlertConfiguration.alert_state.validator),
    ('sensitivity_level', AdminAlertingAlertConfiguration.sensitivity_level.validator),
    ('recipients_settings', AdminAlertingAlertConfiguration.recipients_settings.validator),
    ('text', AdminAlertingAlertConfiguration.text.validator),
    ('excluded_file_extensions', AdminAlertingAlertConfiguration.excluded_file_extensions.validator),
]

AdminAlertingAlertSensitivity._high_validator = bv.Void()
AdminAlertingAlertSensitivity._highest_validator = bv.Void()
AdminAlertingAlertSensitivity._invalid_validator = bv.Void()
AdminAlertingAlertSensitivity._low_validator = bv.Void()
AdminAlertingAlertSensitivity._lowest_validator = bv.Void()
AdminAlertingAlertSensitivity._medium_validator = bv.Void()
AdminAlertingAlertSensitivity._other_validator = bv.Void()
AdminAlertingAlertSensitivity._tagmap = {
    'high': AdminAlertingAlertSensitivity._high_validator,
    'highest': AdminAlertingAlertSensitivity._highest_validator,
    'invalid': AdminAlertingAlertSensitivity._invalid_validator,
    'low': AdminAlertingAlertSensitivity._low_validator,
    'lowest': AdminAlertingAlertSensitivity._lowest_validator,
    'medium': AdminAlertingAlertSensitivity._medium_validator,
    'other': AdminAlertingAlertSensitivity._other_validator,
}

AdminAlertingAlertSensitivity.high = AdminAlertingAlertSensitivity('high')
AdminAlertingAlertSensitivity.highest = AdminAlertingAlertSensitivity('highest')
AdminAlertingAlertSensitivity.invalid = AdminAlertingAlertSensitivity('invalid')
AdminAlertingAlertSensitivity.low = AdminAlertingAlertSensitivity('low')
AdminAlertingAlertSensitivity.lowest = AdminAlertingAlertSensitivity('lowest')
AdminAlertingAlertSensitivity.medium = AdminAlertingAlertSensitivity('medium')
AdminAlertingAlertSensitivity.other = AdminAlertingAlertSensitivity('other')

AdminAlertingAlertStateChangedDetails.alert_name.validator = bv.String()
AdminAlertingAlertStateChangedDetails.alert_severity.validator = AdminAlertSeverityEnum_validator
AdminAlertingAlertStateChangedDetails.alert_category.validator = AdminAlertCategoryEnum_validator
AdminAlertingAlertStateChangedDetails.alert_instance_id.validator = bv.String()
AdminAlertingAlertStateChangedDetails.previous_value.validator = AdminAlertGeneralStateEnum_validator
AdminAlertingAlertStateChangedDetails.new_value.validator = AdminAlertGeneralStateEnum_validator
AdminAlertingAlertStateChangedDetails._all_field_names_ = set([
    'alert_name',
    'alert_severity',
    'alert_category',
    'alert_instance_id',
    'previous_value',
    'new_value',
])
AdminAlertingAlertStateChangedDetails._all_fields_ = [
    ('alert_name', AdminAlertingAlertStateChangedDetails.alert_name.validator),
    ('alert_severity', AdminAlertingAlertStateChangedDetails.alert_severity.validator),
    ('alert_category', AdminAlertingAlertStateChangedDetails.alert_category.validator),
    ('alert_instance_id', AdminAlertingAlertStateChangedDetails.alert_instance_id.validator),
    ('previous_value', AdminAlertingAlertStateChangedDetails.previous_value.validator),
    ('new_value', AdminAlertingAlertStateChangedDetails.new_value.validator),
]

AdminAlertingAlertStateChangedType.description.validator = bv.String()
AdminAlertingAlertStateChangedType._all_field_names_ = set(['description'])
AdminAlertingAlertStateChangedType._all_fields_ = [('description', AdminAlertingAlertStateChangedType.description.validator)]

AdminAlertingAlertStatePolicy._off_validator = bv.Void()
AdminAlertingAlertStatePolicy._on_validator = bv.Void()
AdminAlertingAlertStatePolicy._other_validator = bv.Void()
AdminAlertingAlertStatePolicy._tagmap = {
    'off': AdminAlertingAlertStatePolicy._off_validator,
    'on': AdminAlertingAlertStatePolicy._on_validator,
    'other': AdminAlertingAlertStatePolicy._other_validator,
}

AdminAlertingAlertStatePolicy.off = AdminAlertingAlertStatePolicy('off')
AdminAlertingAlertStatePolicy.on = AdminAlertingAlertStatePolicy('on')
AdminAlertingAlertStatePolicy.other = AdminAlertingAlertStatePolicy('other')

AdminAlertingChangedAlertConfigDetails.alert_name.validator = bv.String()
AdminAlertingChangedAlertConfigDetails.previous_alert_config.validator = AdminAlertingAlertConfiguration_validator
AdminAlertingChangedAlertConfigDetails.new_alert_config.validator = AdminAlertingAlertConfiguration_validator
AdminAlertingChangedAlertConfigDetails._all_field_names_ = set([
    'alert_name',
    'previous_alert_config',
    'new_alert_config',
])
AdminAlertingChangedAlertConfigDetails._all_fields_ = [
    ('alert_name', AdminAlertingChangedAlertConfigDetails.alert_name.validator),
    ('previous_alert_config', AdminAlertingChangedAlertConfigDetails.previous_alert_config.validator),
    ('new_alert_config', AdminAlertingChangedAlertConfigDetails.new_alert_config.validator),
]

AdminAlertingChangedAlertConfigType.description.validator = bv.String()
AdminAlertingChangedAlertConfigType._all_field_names_ = set(['description'])
AdminAlertingChangedAlertConfigType._all_fields_ = [('description', AdminAlertingChangedAlertConfigType.description.validator)]

AdminAlertingTriggeredAlertDetails.alert_name.validator = bv.String()
AdminAlertingTriggeredAlertDetails.alert_severity.validator = AdminAlertSeverityEnum_validator
AdminAlertingTriggeredAlertDetails.alert_category.validator = AdminAlertCategoryEnum_validator
AdminAlertingTriggeredAlertDetails.alert_instance_id.validator = bv.String()
AdminAlertingTriggeredAlertDetails._all_field_names_ = set([
    'alert_name',
    'alert_severity',
    'alert_category',
    'alert_instance_id',
])
AdminAlertingTriggeredAlertDetails._all_fields_ = [
    ('alert_name', AdminAlertingTriggeredAlertDetails.alert_name.validator),
    ('alert_severity', AdminAlertingTriggeredAlertDetails.alert_severity.validator),
    ('alert_category', AdminAlertingTriggeredAlertDetails.alert_category.validator),
    ('alert_instance_id', AdminAlertingTriggeredAlertDetails.alert_instance_id.validator),
]

AdminAlertingTriggeredAlertType.description.validator = bv.String()
AdminAlertingTriggeredAlertType._all_field_names_ = set(['description'])
AdminAlertingTriggeredAlertType._all_fields_ = [('description', AdminAlertingTriggeredAlertType.description.validator)]

AdminConsoleAppPermission._default_for_listed_apps_validator = bv.Void()
AdminConsoleAppPermission._default_for_unlisted_apps_validator = bv.Void()
AdminConsoleAppPermission._other_validator = bv.Void()
AdminConsoleAppPermission._tagmap = {
    'default_for_listed_apps': AdminConsoleAppPermission._default_for_listed_apps_validator,
    'default_for_unlisted_apps': AdminConsoleAppPermission._default_for_unlisted_apps_validator,
    'other': AdminConsoleAppPermission._other_validator,
}

AdminConsoleAppPermission.default_for_listed_apps = AdminConsoleAppPermission('default_for_listed_apps')
AdminConsoleAppPermission.default_for_unlisted_apps = AdminConsoleAppPermission('default_for_unlisted_apps')
AdminConsoleAppPermission.other = AdminConsoleAppPermission('other')

AdminConsoleAppPolicy._allow_validator = bv.Void()
AdminConsoleAppPolicy._block_validator = bv.Void()
AdminConsoleAppPolicy._default_validator = bv.Void()
AdminConsoleAppPolicy._other_validator = bv.Void()
AdminConsoleAppPolicy._tagmap = {
    'allow': AdminConsoleAppPolicy._allow_validator,
    'block': AdminConsoleAppPolicy._block_validator,
    'default': AdminConsoleAppPolicy._default_validator,
    'other': AdminConsoleAppPolicy._other_validator,
}

AdminConsoleAppPolicy.allow = AdminConsoleAppPolicy('allow')
AdminConsoleAppPolicy.block = AdminConsoleAppPolicy('block')
AdminConsoleAppPolicy.default = AdminConsoleAppPolicy('default')
AdminConsoleAppPolicy.other = AdminConsoleAppPolicy('other')

AdminEmailRemindersChangedDetails.new_value.validator = AdminEmailRemindersPolicy_validator
AdminEmailRemindersChangedDetails.previous_value.validator = AdminEmailRemindersPolicy_validator
AdminEmailRemindersChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
AdminEmailRemindersChangedDetails._all_fields_ = [
    ('new_value', AdminEmailRemindersChangedDetails.new_value.validator),
    ('previous_value', AdminEmailRemindersChangedDetails.previous_value.validator),
]

AdminEmailRemindersChangedType.description.validator = bv.String()
AdminEmailRemindersChangedType._all_field_names_ = set(['description'])
AdminEmailRemindersChangedType._all_fields_ = [('description', AdminEmailRemindersChangedType.description.validator)]

AdminEmailRemindersPolicy._default_validator = bv.Void()
AdminEmailRemindersPolicy._disabled_validator = bv.Void()
AdminEmailRemindersPolicy._enabled_validator = bv.Void()
AdminEmailRemindersPolicy._other_validator = bv.Void()
AdminEmailRemindersPolicy._tagmap = {
    'default': AdminEmailRemindersPolicy._default_validator,
    'disabled': AdminEmailRemindersPolicy._disabled_validator,
    'enabled': AdminEmailRemindersPolicy._enabled_validator,
    'other': AdminEmailRemindersPolicy._other_validator,
}

AdminEmailRemindersPolicy.default = AdminEmailRemindersPolicy('default')
AdminEmailRemindersPolicy.disabled = AdminEmailRemindersPolicy('disabled')
AdminEmailRemindersPolicy.enabled = AdminEmailRemindersPolicy('enabled')
AdminEmailRemindersPolicy.other = AdminEmailRemindersPolicy('other')

AdminRole._billing_admin_validator = bv.Void()
AdminRole._compliance_admin_validator = bv.Void()
AdminRole._content_admin_validator = bv.Void()
AdminRole._limited_admin_validator = bv.Void()
AdminRole._member_only_validator = bv.Void()
AdminRole._reporting_admin_validator = bv.Void()
AdminRole._security_admin_validator = bv.Void()
AdminRole._support_admin_validator = bv.Void()
AdminRole._team_admin_validator = bv.Void()
AdminRole._user_management_admin_validator = bv.Void()
AdminRole._other_validator = bv.Void()
AdminRole._tagmap = {
    'billing_admin': AdminRole._billing_admin_validator,
    'compliance_admin': AdminRole._compliance_admin_validator,
    'content_admin': AdminRole._content_admin_validator,
    'limited_admin': AdminRole._limited_admin_validator,
    'member_only': AdminRole._member_only_validator,
    'reporting_admin': AdminRole._reporting_admin_validator,
    'security_admin': AdminRole._security_admin_validator,
    'support_admin': AdminRole._support_admin_validator,
    'team_admin': AdminRole._team_admin_validator,
    'user_management_admin': AdminRole._user_management_admin_validator,
    'other': AdminRole._other_validator,
}

AdminRole.billing_admin = AdminRole('billing_admin')
AdminRole.compliance_admin = AdminRole('compliance_admin')
AdminRole.content_admin = AdminRole('content_admin')
AdminRole.limited_admin = AdminRole('limited_admin')
AdminRole.member_only = AdminRole('member_only')
AdminRole.reporting_admin = AdminRole('reporting_admin')
AdminRole.security_admin = AdminRole('security_admin')
AdminRole.support_admin = AdminRole('support_admin')
AdminRole.team_admin = AdminRole('team_admin')
AdminRole.user_management_admin = AdminRole('user_management_admin')
AdminRole.other = AdminRole('other')

AlertRecipientsSettingType._custom_list_validator = bv.Void()
AlertRecipientsSettingType._invalid_validator = bv.Void()
AlertRecipientsSettingType._none_validator = bv.Void()
AlertRecipientsSettingType._team_admins_validator = bv.Void()
AlertRecipientsSettingType._other_validator = bv.Void()
AlertRecipientsSettingType._tagmap = {
    'custom_list': AlertRecipientsSettingType._custom_list_validator,
    'invalid': AlertRecipientsSettingType._invalid_validator,
    'none': AlertRecipientsSettingType._none_validator,
    'team_admins': AlertRecipientsSettingType._team_admins_validator,
    'other': AlertRecipientsSettingType._other_validator,
}

AlertRecipientsSettingType.custom_list = AlertRecipientsSettingType('custom_list')
AlertRecipientsSettingType.invalid = AlertRecipientsSettingType('invalid')
AlertRecipientsSettingType.none = AlertRecipientsSettingType('none')
AlertRecipientsSettingType.team_admins = AlertRecipientsSettingType('team_admins')
AlertRecipientsSettingType.other = AlertRecipientsSettingType('other')

AllowDownloadDisabledDetails._all_field_names_ = set([])
AllowDownloadDisabledDetails._all_fields_ = []

AllowDownloadDisabledType.description.validator = bv.String()
AllowDownloadDisabledType._all_field_names_ = set(['description'])
AllowDownloadDisabledType._all_fields_ = [('description', AllowDownloadDisabledType.description.validator)]

AllowDownloadEnabledDetails._all_field_names_ = set([])
AllowDownloadEnabledDetails._all_fields_ = []

AllowDownloadEnabledType.description.validator = bv.String()
AllowDownloadEnabledType._all_field_names_ = set(['description'])
AllowDownloadEnabledType._all_fields_ = [('description', AllowDownloadEnabledType.description.validator)]

ApiSessionLogInfo.request_id.validator = RequestId_validator
ApiSessionLogInfo._all_field_names_ = set(['request_id'])
ApiSessionLogInfo._all_fields_ = [('request_id', ApiSessionLogInfo.request_id.validator)]

AppBlockedByPermissionsDetails.app_info.validator = AppLogInfo_validator
AppBlockedByPermissionsDetails._all_field_names_ = set(['app_info'])
AppBlockedByPermissionsDetails._all_fields_ = [('app_info', AppBlockedByPermissionsDetails.app_info.validator)]

AppBlockedByPermissionsType.description.validator = bv.String()
AppBlockedByPermissionsType._all_field_names_ = set(['description'])
AppBlockedByPermissionsType._all_fields_ = [('description', AppBlockedByPermissionsType.description.validator)]

AppLinkTeamDetails.app_info.validator = AppLogInfo_validator
AppLinkTeamDetails._all_field_names_ = set(['app_info'])
AppLinkTeamDetails._all_fields_ = [('app_info', AppLinkTeamDetails.app_info.validator)]

AppLinkTeamType.description.validator = bv.String()
AppLinkTeamType._all_field_names_ = set(['description'])
AppLinkTeamType._all_fields_ = [('description', AppLinkTeamType.description.validator)]

AppLinkUserDetails.app_info.validator = AppLogInfo_validator
AppLinkUserDetails._all_field_names_ = set(['app_info'])
AppLinkUserDetails._all_fields_ = [('app_info', AppLinkUserDetails.app_info.validator)]

AppLinkUserType.description.validator = bv.String()
AppLinkUserType._all_field_names_ = set(['description'])
AppLinkUserType._all_fields_ = [('description', AppLinkUserType.description.validator)]

AppLogInfo.app_id.validator = bv.Nullable(AppId_validator)
AppLogInfo.display_name.validator = bv.Nullable(bv.String())
AppLogInfo._field_names_ = set([
    'app_id',
    'display_name',
])
AppLogInfo._all_field_names_ = AppLogInfo._field_names_
AppLogInfo._fields_ = [
    ('app_id', AppLogInfo.app_id.validator),
    ('display_name', AppLogInfo.display_name.validator),
]
AppLogInfo._all_fields_ = AppLogInfo._fields_

AppLogInfo._tag_to_subtype_ = {
    ('user_or_team_linked_app',): UserOrTeamLinkedAppLogInfo_validator,
    ('user_linked_app',): UserLinkedAppLogInfo_validator,
    ('team_linked_app',): TeamLinkedAppLogInfo_validator,
}
AppLogInfo._pytype_to_tag_and_subtype_ = {
    UserOrTeamLinkedAppLogInfo: (('user_or_team_linked_app',), UserOrTeamLinkedAppLogInfo_validator),
    UserLinkedAppLogInfo: (('user_linked_app',), UserLinkedAppLogInfo_validator),
    TeamLinkedAppLogInfo: (('team_linked_app',), TeamLinkedAppLogInfo_validator),
}
AppLogInfo._is_catch_all_ = True

AppPermissionsChangedDetails.app_name.validator = bv.Nullable(bv.String())
AppPermissionsChangedDetails.permission.validator = bv.Nullable(AdminConsoleAppPermission_validator)
AppPermissionsChangedDetails.previous_value.validator = AdminConsoleAppPolicy_validator
AppPermissionsChangedDetails.new_value.validator = AdminConsoleAppPolicy_validator
AppPermissionsChangedDetails._all_field_names_ = set([
    'app_name',
    'permission',
    'previous_value',
    'new_value',
])
AppPermissionsChangedDetails._all_fields_ = [
    ('app_name', AppPermissionsChangedDetails.app_name.validator),
    ('permission', AppPermissionsChangedDetails.permission.validator),
    ('previous_value', AppPermissionsChangedDetails.previous_value.validator),
    ('new_value', AppPermissionsChangedDetails.new_value.validator),
]

AppPermissionsChangedType.description.validator = bv.String()
AppPermissionsChangedType._all_field_names_ = set(['description'])
AppPermissionsChangedType._all_fields_ = [('description', AppPermissionsChangedType.description.validator)]

AppUnlinkTeamDetails.app_info.validator = AppLogInfo_validator
AppUnlinkTeamDetails._all_field_names_ = set(['app_info'])
AppUnlinkTeamDetails._all_fields_ = [('app_info', AppUnlinkTeamDetails.app_info.validator)]

AppUnlinkTeamType.description.validator = bv.String()
AppUnlinkTeamType._all_field_names_ = set(['description'])
AppUnlinkTeamType._all_fields_ = [('description', AppUnlinkTeamType.description.validator)]

AppUnlinkUserDetails.app_info.validator = AppLogInfo_validator
AppUnlinkUserDetails._all_field_names_ = set(['app_info'])
AppUnlinkUserDetails._all_fields_ = [('app_info', AppUnlinkUserDetails.app_info.validator)]

AppUnlinkUserType.description.validator = bv.String()
AppUnlinkUserType._all_field_names_ = set(['description'])
AppUnlinkUserType._all_fields_ = [('description', AppUnlinkUserType.description.validator)]

ApplyNamingConventionDetails._all_field_names_ = set([])
ApplyNamingConventionDetails._all_fields_ = []

ApplyNamingConventionType.description.validator = bv.String()
ApplyNamingConventionType._all_field_names_ = set(['description'])
ApplyNamingConventionType._all_fields_ = [('description', ApplyNamingConventionType.description.validator)]

AssetLogInfo._file_validator = FileLogInfo_validator
AssetLogInfo._folder_validator = FolderLogInfo_validator
AssetLogInfo._paper_document_validator = PaperDocumentLogInfo_validator
AssetLogInfo._paper_folder_validator = PaperFolderLogInfo_validator
AssetLogInfo._showcase_document_validator = ShowcaseDocumentLogInfo_validator
AssetLogInfo._other_validator = bv.Void()
AssetLogInfo._tagmap = {
    'file': AssetLogInfo._file_validator,
    'folder': AssetLogInfo._folder_validator,
    'paper_document': AssetLogInfo._paper_document_validator,
    'paper_folder': AssetLogInfo._paper_folder_validator,
    'showcase_document': AssetLogInfo._showcase_document_validator,
    'other': AssetLogInfo._other_validator,
}

AssetLogInfo.other = AssetLogInfo('other')

BackupStatus._disabled_validator = bv.Void()
BackupStatus._enabled_validator = bv.Void()
BackupStatus._other_validator = bv.Void()
BackupStatus._tagmap = {
    'disabled': BackupStatus._disabled_validator,
    'enabled': BackupStatus._enabled_validator,
    'other': BackupStatus._other_validator,
}

BackupStatus.disabled = BackupStatus('disabled')
BackupStatus.enabled = BackupStatus('enabled')
BackupStatus.other = BackupStatus('other')

BinderAddPageDetails.event_uuid.validator = bv.String()
BinderAddPageDetails.doc_title.validator = bv.String()
BinderAddPageDetails.binder_item_name.validator = bv.String()
BinderAddPageDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
])
BinderAddPageDetails._all_fields_ = [
    ('event_uuid', BinderAddPageDetails.event_uuid.validator),
    ('doc_title', BinderAddPageDetails.doc_title.validator),
    ('binder_item_name', BinderAddPageDetails.binder_item_name.validator),
]

BinderAddPageType.description.validator = bv.String()
BinderAddPageType._all_field_names_ = set(['description'])
BinderAddPageType._all_fields_ = [('description', BinderAddPageType.description.validator)]

BinderAddSectionDetails.event_uuid.validator = bv.String()
BinderAddSectionDetails.doc_title.validator = bv.String()
BinderAddSectionDetails.binder_item_name.validator = bv.String()
BinderAddSectionDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
])
BinderAddSectionDetails._all_fields_ = [
    ('event_uuid', BinderAddSectionDetails.event_uuid.validator),
    ('doc_title', BinderAddSectionDetails.doc_title.validator),
    ('binder_item_name', BinderAddSectionDetails.binder_item_name.validator),
]

BinderAddSectionType.description.validator = bv.String()
BinderAddSectionType._all_field_names_ = set(['description'])
BinderAddSectionType._all_fields_ = [('description', BinderAddSectionType.description.validator)]

BinderRemovePageDetails.event_uuid.validator = bv.String()
BinderRemovePageDetails.doc_title.validator = bv.String()
BinderRemovePageDetails.binder_item_name.validator = bv.String()
BinderRemovePageDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
])
BinderRemovePageDetails._all_fields_ = [
    ('event_uuid', BinderRemovePageDetails.event_uuid.validator),
    ('doc_title', BinderRemovePageDetails.doc_title.validator),
    ('binder_item_name', BinderRemovePageDetails.binder_item_name.validator),
]

BinderRemovePageType.description.validator = bv.String()
BinderRemovePageType._all_field_names_ = set(['description'])
BinderRemovePageType._all_fields_ = [('description', BinderRemovePageType.description.validator)]

BinderRemoveSectionDetails.event_uuid.validator = bv.String()
BinderRemoveSectionDetails.doc_title.validator = bv.String()
BinderRemoveSectionDetails.binder_item_name.validator = bv.String()
BinderRemoveSectionDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
])
BinderRemoveSectionDetails._all_fields_ = [
    ('event_uuid', BinderRemoveSectionDetails.event_uuid.validator),
    ('doc_title', BinderRemoveSectionDetails.doc_title.validator),
    ('binder_item_name', BinderRemoveSectionDetails.binder_item_name.validator),
]

BinderRemoveSectionType.description.validator = bv.String()
BinderRemoveSectionType._all_field_names_ = set(['description'])
BinderRemoveSectionType._all_fields_ = [('description', BinderRemoveSectionType.description.validator)]

BinderRenamePageDetails.event_uuid.validator = bv.String()
BinderRenamePageDetails.doc_title.validator = bv.String()
BinderRenamePageDetails.binder_item_name.validator = bv.String()
BinderRenamePageDetails.previous_binder_item_name.validator = bv.Nullable(bv.String())
BinderRenamePageDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
    'previous_binder_item_name',
])
BinderRenamePageDetails._all_fields_ = [
    ('event_uuid', BinderRenamePageDetails.event_uuid.validator),
    ('doc_title', BinderRenamePageDetails.doc_title.validator),
    ('binder_item_name', BinderRenamePageDetails.binder_item_name.validator),
    ('previous_binder_item_name', BinderRenamePageDetails.previous_binder_item_name.validator),
]

BinderRenamePageType.description.validator = bv.String()
BinderRenamePageType._all_field_names_ = set(['description'])
BinderRenamePageType._all_fields_ = [('description', BinderRenamePageType.description.validator)]

BinderRenameSectionDetails.event_uuid.validator = bv.String()
BinderRenameSectionDetails.doc_title.validator = bv.String()
BinderRenameSectionDetails.binder_item_name.validator = bv.String()
BinderRenameSectionDetails.previous_binder_item_name.validator = bv.Nullable(bv.String())
BinderRenameSectionDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
    'previous_binder_item_name',
])
BinderRenameSectionDetails._all_fields_ = [
    ('event_uuid', BinderRenameSectionDetails.event_uuid.validator),
    ('doc_title', BinderRenameSectionDetails.doc_title.validator),
    ('binder_item_name', BinderRenameSectionDetails.binder_item_name.validator),
    ('previous_binder_item_name', BinderRenameSectionDetails.previous_binder_item_name.validator),
]

BinderRenameSectionType.description.validator = bv.String()
BinderRenameSectionType._all_field_names_ = set(['description'])
BinderRenameSectionType._all_fields_ = [('description', BinderRenameSectionType.description.validator)]

BinderReorderPageDetails.event_uuid.validator = bv.String()
BinderReorderPageDetails.doc_title.validator = bv.String()
BinderReorderPageDetails.binder_item_name.validator = bv.String()
BinderReorderPageDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
])
BinderReorderPageDetails._all_fields_ = [
    ('event_uuid', BinderReorderPageDetails.event_uuid.validator),
    ('doc_title', BinderReorderPageDetails.doc_title.validator),
    ('binder_item_name', BinderReorderPageDetails.binder_item_name.validator),
]

BinderReorderPageType.description.validator = bv.String()
BinderReorderPageType._all_field_names_ = set(['description'])
BinderReorderPageType._all_fields_ = [('description', BinderReorderPageType.description.validator)]

BinderReorderSectionDetails.event_uuid.validator = bv.String()
BinderReorderSectionDetails.doc_title.validator = bv.String()
BinderReorderSectionDetails.binder_item_name.validator = bv.String()
BinderReorderSectionDetails._all_field_names_ = set([
    'event_uuid',
    'doc_title',
    'binder_item_name',
])
BinderReorderSectionDetails._all_fields_ = [
    ('event_uuid', BinderReorderSectionDetails.event_uuid.validator),
    ('doc_title', BinderReorderSectionDetails.doc_title.validator),
    ('binder_item_name', BinderReorderSectionDetails.binder_item_name.validator),
]

BinderReorderSectionType.description.validator = bv.String()
BinderReorderSectionType._all_field_names_ = set(['description'])
BinderReorderSectionType._all_fields_ = [('description', BinderReorderSectionType.description.validator)]

CameraUploadsPolicy._disabled_validator = bv.Void()
CameraUploadsPolicy._enabled_validator = bv.Void()
CameraUploadsPolicy._other_validator = bv.Void()
CameraUploadsPolicy._tagmap = {
    'disabled': CameraUploadsPolicy._disabled_validator,
    'enabled': CameraUploadsPolicy._enabled_validator,
    'other': CameraUploadsPolicy._other_validator,
}

CameraUploadsPolicy.disabled = CameraUploadsPolicy('disabled')
CameraUploadsPolicy.enabled = CameraUploadsPolicy('enabled')
CameraUploadsPolicy.other = CameraUploadsPolicy('other')

CameraUploadsPolicyChangedDetails.new_value.validator = CameraUploadsPolicy_validator
CameraUploadsPolicyChangedDetails.previous_value.validator = CameraUploadsPolicy_validator
CameraUploadsPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
CameraUploadsPolicyChangedDetails._all_fields_ = [
    ('new_value', CameraUploadsPolicyChangedDetails.new_value.validator),
    ('previous_value', CameraUploadsPolicyChangedDetails.previous_value.validator),
]

CameraUploadsPolicyChangedType.description.validator = bv.String()
CameraUploadsPolicyChangedType._all_field_names_ = set(['description'])
CameraUploadsPolicyChangedType._all_fields_ = [('description', CameraUploadsPolicyChangedType.description.validator)]

CaptureTranscriptPolicy._default_validator = bv.Void()
CaptureTranscriptPolicy._disabled_validator = bv.Void()
CaptureTranscriptPolicy._enabled_validator = bv.Void()
CaptureTranscriptPolicy._other_validator = bv.Void()
CaptureTranscriptPolicy._tagmap = {
    'default': CaptureTranscriptPolicy._default_validator,
    'disabled': CaptureTranscriptPolicy._disabled_validator,
    'enabled': CaptureTranscriptPolicy._enabled_validator,
    'other': CaptureTranscriptPolicy._other_validator,
}

CaptureTranscriptPolicy.default = CaptureTranscriptPolicy('default')
CaptureTranscriptPolicy.disabled = CaptureTranscriptPolicy('disabled')
CaptureTranscriptPolicy.enabled = CaptureTranscriptPolicy('enabled')
CaptureTranscriptPolicy.other = CaptureTranscriptPolicy('other')

CaptureTranscriptPolicyChangedDetails.new_value.validator = CaptureTranscriptPolicy_validator
CaptureTranscriptPolicyChangedDetails.previous_value.validator = CaptureTranscriptPolicy_validator
CaptureTranscriptPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
CaptureTranscriptPolicyChangedDetails._all_fields_ = [
    ('new_value', CaptureTranscriptPolicyChangedDetails.new_value.validator),
    ('previous_value', CaptureTranscriptPolicyChangedDetails.previous_value.validator),
]

CaptureTranscriptPolicyChangedType.description.validator = bv.String()
CaptureTranscriptPolicyChangedType._all_field_names_ = set(['description'])
CaptureTranscriptPolicyChangedType._all_fields_ = [('description', CaptureTranscriptPolicyChangedType.description.validator)]

Certificate.subject.validator = bv.String()
Certificate.issuer.validator = bv.String()
Certificate.issue_date.validator = bv.String()
Certificate.expiration_date.validator = bv.String()
Certificate.serial_number.validator = bv.String()
Certificate.sha1_fingerprint.validator = bv.String()
Certificate.common_name.validator = bv.Nullable(bv.String())
Certificate._all_field_names_ = set([
    'subject',
    'issuer',
    'issue_date',
    'expiration_date',
    'serial_number',
    'sha1_fingerprint',
    'common_name',
])
Certificate._all_fields_ = [
    ('subject', Certificate.subject.validator),
    ('issuer', Certificate.issuer.validator),
    ('issue_date', Certificate.issue_date.validator),
    ('expiration_date', Certificate.expiration_date.validator),
    ('serial_number', Certificate.serial_number.validator),
    ('sha1_fingerprint', Certificate.sha1_fingerprint.validator),
    ('common_name', Certificate.common_name.validator),
]

ChangeLinkExpirationPolicy._allowed_validator = bv.Void()
ChangeLinkExpirationPolicy._not_allowed_validator = bv.Void()
ChangeLinkExpirationPolicy._other_validator = bv.Void()
ChangeLinkExpirationPolicy._tagmap = {
    'allowed': ChangeLinkExpirationPolicy._allowed_validator,
    'not_allowed': ChangeLinkExpirationPolicy._not_allowed_validator,
    'other': ChangeLinkExpirationPolicy._other_validator,
}

ChangeLinkExpirationPolicy.allowed = ChangeLinkExpirationPolicy('allowed')
ChangeLinkExpirationPolicy.not_allowed = ChangeLinkExpirationPolicy('not_allowed')
ChangeLinkExpirationPolicy.other = ChangeLinkExpirationPolicy('other')

ChangedEnterpriseAdminRoleDetails.previous_value.validator = FedAdminRole_validator
ChangedEnterpriseAdminRoleDetails.new_value.validator = FedAdminRole_validator
ChangedEnterpriseAdminRoleDetails.team_name.validator = bv.String()
ChangedEnterpriseAdminRoleDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
    'team_name',
])
ChangedEnterpriseAdminRoleDetails._all_fields_ = [
    ('previous_value', ChangedEnterpriseAdminRoleDetails.previous_value.validator),
    ('new_value', ChangedEnterpriseAdminRoleDetails.new_value.validator),
    ('team_name', ChangedEnterpriseAdminRoleDetails.team_name.validator),
]

ChangedEnterpriseAdminRoleType.description.validator = bv.String()
ChangedEnterpriseAdminRoleType._all_field_names_ = set(['description'])
ChangedEnterpriseAdminRoleType._all_fields_ = [('description', ChangedEnterpriseAdminRoleType.description.validator)]

ChangedEnterpriseConnectedTeamStatusDetails.action.validator = FedHandshakeAction_validator
ChangedEnterpriseConnectedTeamStatusDetails.additional_info.validator = FederationStatusChangeAdditionalInfo_validator
ChangedEnterpriseConnectedTeamStatusDetails.previous_value.validator = TrustedTeamsRequestState_validator
ChangedEnterpriseConnectedTeamStatusDetails.new_value.validator = TrustedTeamsRequestState_validator
ChangedEnterpriseConnectedTeamStatusDetails._all_field_names_ = set([
    'action',
    'additional_info',
    'previous_value',
    'new_value',
])
ChangedEnterpriseConnectedTeamStatusDetails._all_fields_ = [
    ('action', ChangedEnterpriseConnectedTeamStatusDetails.action.validator),
    ('additional_info', ChangedEnterpriseConnectedTeamStatusDetails.additional_info.validator),
    ('previous_value', ChangedEnterpriseConnectedTeamStatusDetails.previous_value.validator),
    ('new_value', ChangedEnterpriseConnectedTeamStatusDetails.new_value.validator),
]

ChangedEnterpriseConnectedTeamStatusType.description.validator = bv.String()
ChangedEnterpriseConnectedTeamStatusType._all_field_names_ = set(['description'])
ChangedEnterpriseConnectedTeamStatusType._all_fields_ = [('description', ChangedEnterpriseConnectedTeamStatusType.description.validator)]

ClassificationChangePolicyDetails.previous_value.validator = ClassificationPolicyEnumWrapper_validator
ClassificationChangePolicyDetails.new_value.validator = ClassificationPolicyEnumWrapper_validator
ClassificationChangePolicyDetails.classification_type.validator = ClassificationType_validator
ClassificationChangePolicyDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
    'classification_type',
])
ClassificationChangePolicyDetails._all_fields_ = [
    ('previous_value', ClassificationChangePolicyDetails.previous_value.validator),
    ('new_value', ClassificationChangePolicyDetails.new_value.validator),
    ('classification_type', ClassificationChangePolicyDetails.classification_type.validator),
]

ClassificationChangePolicyType.description.validator = bv.String()
ClassificationChangePolicyType._all_field_names_ = set(['description'])
ClassificationChangePolicyType._all_fields_ = [('description', ClassificationChangePolicyType.description.validator)]

ClassificationCreateReportDetails._all_field_names_ = set([])
ClassificationCreateReportDetails._all_fields_ = []

ClassificationCreateReportFailDetails.failure_reason.validator = team.TeamReportFailureReason_validator
ClassificationCreateReportFailDetails._all_field_names_ = set(['failure_reason'])
ClassificationCreateReportFailDetails._all_fields_ = [('failure_reason', ClassificationCreateReportFailDetails.failure_reason.validator)]

ClassificationCreateReportFailType.description.validator = bv.String()
ClassificationCreateReportFailType._all_field_names_ = set(['description'])
ClassificationCreateReportFailType._all_fields_ = [('description', ClassificationCreateReportFailType.description.validator)]

ClassificationCreateReportType.description.validator = bv.String()
ClassificationCreateReportType._all_field_names_ = set(['description'])
ClassificationCreateReportType._all_fields_ = [('description', ClassificationCreateReportType.description.validator)]

ClassificationPolicyEnumWrapper._disabled_validator = bv.Void()
ClassificationPolicyEnumWrapper._enabled_validator = bv.Void()
ClassificationPolicyEnumWrapper._member_and_team_folders_validator = bv.Void()
ClassificationPolicyEnumWrapper._team_folders_validator = bv.Void()
ClassificationPolicyEnumWrapper._other_validator = bv.Void()
ClassificationPolicyEnumWrapper._tagmap = {
    'disabled': ClassificationPolicyEnumWrapper._disabled_validator,
    'enabled': ClassificationPolicyEnumWrapper._enabled_validator,
    'member_and_team_folders': ClassificationPolicyEnumWrapper._member_and_team_folders_validator,
    'team_folders': ClassificationPolicyEnumWrapper._team_folders_validator,
    'other': ClassificationPolicyEnumWrapper._other_validator,
}

ClassificationPolicyEnumWrapper.disabled = ClassificationPolicyEnumWrapper('disabled')
ClassificationPolicyEnumWrapper.enabled = ClassificationPolicyEnumWrapper('enabled')
ClassificationPolicyEnumWrapper.member_and_team_folders = ClassificationPolicyEnumWrapper('member_and_team_folders')
ClassificationPolicyEnumWrapper.team_folders = ClassificationPolicyEnumWrapper('team_folders')
ClassificationPolicyEnumWrapper.other = ClassificationPolicyEnumWrapper('other')

ClassificationType._personal_information_validator = bv.Void()
ClassificationType._pii_validator = bv.Void()
ClassificationType._other_validator = bv.Void()
ClassificationType._tagmap = {
    'personal_information': ClassificationType._personal_information_validator,
    'pii': ClassificationType._pii_validator,
    'other': ClassificationType._other_validator,
}

ClassificationType.personal_information = ClassificationType('personal_information')
ClassificationType.pii = ClassificationType('pii')
ClassificationType.other = ClassificationType('other')

CollectionShareDetails.album_name.validator = bv.String()
CollectionShareDetails._all_field_names_ = set(['album_name'])
CollectionShareDetails._all_fields_ = [('album_name', CollectionShareDetails.album_name.validator)]

CollectionShareType.description.validator = bv.String()
CollectionShareType._all_field_names_ = set(['description'])
CollectionShareType._all_fields_ = [('description', CollectionShareType.description.validator)]

ComputerBackupPolicy._default_validator = bv.Void()
ComputerBackupPolicy._disabled_validator = bv.Void()
ComputerBackupPolicy._enabled_validator = bv.Void()
ComputerBackupPolicy._other_validator = bv.Void()
ComputerBackupPolicy._tagmap = {
    'default': ComputerBackupPolicy._default_validator,
    'disabled': ComputerBackupPolicy._disabled_validator,
    'enabled': ComputerBackupPolicy._enabled_validator,
    'other': ComputerBackupPolicy._other_validator,
}

ComputerBackupPolicy.default = ComputerBackupPolicy('default')
ComputerBackupPolicy.disabled = ComputerBackupPolicy('disabled')
ComputerBackupPolicy.enabled = ComputerBackupPolicy('enabled')
ComputerBackupPolicy.other = ComputerBackupPolicy('other')

ComputerBackupPolicyChangedDetails.new_value.validator = ComputerBackupPolicy_validator
ComputerBackupPolicyChangedDetails.previous_value.validator = ComputerBackupPolicy_validator
ComputerBackupPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ComputerBackupPolicyChangedDetails._all_fields_ = [
    ('new_value', ComputerBackupPolicyChangedDetails.new_value.validator),
    ('previous_value', ComputerBackupPolicyChangedDetails.previous_value.validator),
]

ComputerBackupPolicyChangedType.description.validator = bv.String()
ComputerBackupPolicyChangedType._all_field_names_ = set(['description'])
ComputerBackupPolicyChangedType._all_fields_ = [('description', ComputerBackupPolicyChangedType.description.validator)]

ConnectedTeamName.team.validator = bv.String()
ConnectedTeamName._all_field_names_ = set(['team'])
ConnectedTeamName._all_fields_ = [('team', ConnectedTeamName.team.validator)]

ContentAdministrationPolicyChangedDetails.new_value.validator = bv.String()
ContentAdministrationPolicyChangedDetails.previous_value.validator = bv.String()
ContentAdministrationPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ContentAdministrationPolicyChangedDetails._all_fields_ = [
    ('new_value', ContentAdministrationPolicyChangedDetails.new_value.validator),
    ('previous_value', ContentAdministrationPolicyChangedDetails.previous_value.validator),
]

ContentAdministrationPolicyChangedType.description.validator = bv.String()
ContentAdministrationPolicyChangedType._all_field_names_ = set(['description'])
ContentAdministrationPolicyChangedType._all_fields_ = [('description', ContentAdministrationPolicyChangedType.description.validator)]

ContentPermanentDeletePolicy._disabled_validator = bv.Void()
ContentPermanentDeletePolicy._enabled_validator = bv.Void()
ContentPermanentDeletePolicy._other_validator = bv.Void()
ContentPermanentDeletePolicy._tagmap = {
    'disabled': ContentPermanentDeletePolicy._disabled_validator,
    'enabled': ContentPermanentDeletePolicy._enabled_validator,
    'other': ContentPermanentDeletePolicy._other_validator,
}

ContentPermanentDeletePolicy.disabled = ContentPermanentDeletePolicy('disabled')
ContentPermanentDeletePolicy.enabled = ContentPermanentDeletePolicy('enabled')
ContentPermanentDeletePolicy.other = ContentPermanentDeletePolicy('other')

ContextLogInfo._anonymous_validator = bv.Void()
ContextLogInfo._non_team_member_validator = NonTeamMemberLogInfo_validator
ContextLogInfo._organization_team_validator = TeamLogInfo_validator
ContextLogInfo._team_validator = bv.Void()
ContextLogInfo._team_member_validator = TeamMemberLogInfo_validator
ContextLogInfo._trusted_non_team_member_validator = TrustedNonTeamMemberLogInfo_validator
ContextLogInfo._other_validator = bv.Void()
ContextLogInfo._tagmap = {
    'anonymous': ContextLogInfo._anonymous_validator,
    'non_team_member': ContextLogInfo._non_team_member_validator,
    'organization_team': ContextLogInfo._organization_team_validator,
    'team': ContextLogInfo._team_validator,
    'team_member': ContextLogInfo._team_member_validator,
    'trusted_non_team_member': ContextLogInfo._trusted_non_team_member_validator,
    'other': ContextLogInfo._other_validator,
}

ContextLogInfo.anonymous = ContextLogInfo('anonymous')
ContextLogInfo.team = ContextLogInfo('team')
ContextLogInfo.other = ContextLogInfo('other')

CreateFolderDetails._all_field_names_ = set([])
CreateFolderDetails._all_fields_ = []

CreateFolderType.description.validator = bv.String()
CreateFolderType._all_field_names_ = set(['description'])
CreateFolderType._all_fields_ = [('description', CreateFolderType.description.validator)]

CreateTeamInviteLinkDetails.link_url.validator = bv.String()
CreateTeamInviteLinkDetails.expiry_date.validator = bv.String()
CreateTeamInviteLinkDetails._all_field_names_ = set([
    'link_url',
    'expiry_date',
])
CreateTeamInviteLinkDetails._all_fields_ = [
    ('link_url', CreateTeamInviteLinkDetails.link_url.validator),
    ('expiry_date', CreateTeamInviteLinkDetails.expiry_date.validator),
]

CreateTeamInviteLinkType.description.validator = bv.String()
CreateTeamInviteLinkType._all_field_names_ = set(['description'])
CreateTeamInviteLinkType._all_fields_ = [('description', CreateTeamInviteLinkType.description.validator)]

DataPlacementRestrictionChangePolicyDetails.previous_value.validator = PlacementRestriction_validator
DataPlacementRestrictionChangePolicyDetails.new_value.validator = PlacementRestriction_validator
DataPlacementRestrictionChangePolicyDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
DataPlacementRestrictionChangePolicyDetails._all_fields_ = [
    ('previous_value', DataPlacementRestrictionChangePolicyDetails.previous_value.validator),
    ('new_value', DataPlacementRestrictionChangePolicyDetails.new_value.validator),
]

DataPlacementRestrictionChangePolicyType.description.validator = bv.String()
DataPlacementRestrictionChangePolicyType._all_field_names_ = set(['description'])
DataPlacementRestrictionChangePolicyType._all_fields_ = [('description', DataPlacementRestrictionChangePolicyType.description.validator)]

DataPlacementRestrictionSatisfyPolicyDetails.placement_restriction.validator = PlacementRestriction_validator
DataPlacementRestrictionSatisfyPolicyDetails._all_field_names_ = set(['placement_restriction'])
DataPlacementRestrictionSatisfyPolicyDetails._all_fields_ = [('placement_restriction', DataPlacementRestrictionSatisfyPolicyDetails.placement_restriction.validator)]

DataPlacementRestrictionSatisfyPolicyType.description.validator = bv.String()
DataPlacementRestrictionSatisfyPolicyType._all_field_names_ = set(['description'])
DataPlacementRestrictionSatisfyPolicyType._all_fields_ = [('description', DataPlacementRestrictionSatisfyPolicyType.description.validator)]

DataResidencyMigrationRequestSuccessfulDetails._all_field_names_ = set([])
DataResidencyMigrationRequestSuccessfulDetails._all_fields_ = []

DataResidencyMigrationRequestSuccessfulType.description.validator = bv.String()
DataResidencyMigrationRequestSuccessfulType._all_field_names_ = set(['description'])
DataResidencyMigrationRequestSuccessfulType._all_fields_ = [('description', DataResidencyMigrationRequestSuccessfulType.description.validator)]

DataResidencyMigrationRequestUnsuccessfulDetails._all_field_names_ = set([])
DataResidencyMigrationRequestUnsuccessfulDetails._all_fields_ = []

DataResidencyMigrationRequestUnsuccessfulType.description.validator = bv.String()
DataResidencyMigrationRequestUnsuccessfulType._all_field_names_ = set(['description'])
DataResidencyMigrationRequestUnsuccessfulType._all_fields_ = [('description', DataResidencyMigrationRequestUnsuccessfulType.description.validator)]

DefaultLinkExpirationDaysPolicy._day_1_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._day_180_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._day_3_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._day_30_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._day_7_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._day_90_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._none_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._year_1_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._other_validator = bv.Void()
DefaultLinkExpirationDaysPolicy._tagmap = {
    'day_1': DefaultLinkExpirationDaysPolicy._day_1_validator,
    'day_180': DefaultLinkExpirationDaysPolicy._day_180_validator,
    'day_3': DefaultLinkExpirationDaysPolicy._day_3_validator,
    'day_30': DefaultLinkExpirationDaysPolicy._day_30_validator,
    'day_7': DefaultLinkExpirationDaysPolicy._day_7_validator,
    'day_90': DefaultLinkExpirationDaysPolicy._day_90_validator,
    'none': DefaultLinkExpirationDaysPolicy._none_validator,
    'year_1': DefaultLinkExpirationDaysPolicy._year_1_validator,
    'other': DefaultLinkExpirationDaysPolicy._other_validator,
}

DefaultLinkExpirationDaysPolicy.day_1 = DefaultLinkExpirationDaysPolicy('day_1')
DefaultLinkExpirationDaysPolicy.day_180 = DefaultLinkExpirationDaysPolicy('day_180')
DefaultLinkExpirationDaysPolicy.day_3 = DefaultLinkExpirationDaysPolicy('day_3')
DefaultLinkExpirationDaysPolicy.day_30 = DefaultLinkExpirationDaysPolicy('day_30')
DefaultLinkExpirationDaysPolicy.day_7 = DefaultLinkExpirationDaysPolicy('day_7')
DefaultLinkExpirationDaysPolicy.day_90 = DefaultLinkExpirationDaysPolicy('day_90')
DefaultLinkExpirationDaysPolicy.none = DefaultLinkExpirationDaysPolicy('none')
DefaultLinkExpirationDaysPolicy.year_1 = DefaultLinkExpirationDaysPolicy('year_1')
DefaultLinkExpirationDaysPolicy.other = DefaultLinkExpirationDaysPolicy('other')

DeleteTeamInviteLinkDetails.link_url.validator = bv.String()
DeleteTeamInviteLinkDetails._all_field_names_ = set(['link_url'])
DeleteTeamInviteLinkDetails._all_fields_ = [('link_url', DeleteTeamInviteLinkDetails.link_url.validator)]

DeleteTeamInviteLinkType.description.validator = bv.String()
DeleteTeamInviteLinkType._all_field_names_ = set(['description'])
DeleteTeamInviteLinkType._all_fields_ = [('description', DeleteTeamInviteLinkType.description.validator)]

DeviceSessionLogInfo.ip_address.validator = bv.Nullable(IpAddress_validator)
DeviceSessionLogInfo.created.validator = bv.Nullable(common.DropboxTimestamp_validator)
DeviceSessionLogInfo.updated.validator = bv.Nullable(common.DropboxTimestamp_validator)
DeviceSessionLogInfo._field_names_ = set([
    'ip_address',
    'created',
    'updated',
])
DeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._field_names_
DeviceSessionLogInfo._fields_ = [
    ('ip_address', DeviceSessionLogInfo.ip_address.validator),
    ('created', DeviceSessionLogInfo.created.validator),
    ('updated', DeviceSessionLogInfo.updated.validator),
]
DeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._fields_

DeviceSessionLogInfo._tag_to_subtype_ = {
    ('desktop_device_session',): DesktopDeviceSessionLogInfo_validator,
    ('mobile_device_session',): MobileDeviceSessionLogInfo_validator,
    ('web_device_session',): WebDeviceSessionLogInfo_validator,
    ('legacy_device_session',): LegacyDeviceSessionLogInfo_validator,
}
DeviceSessionLogInfo._pytype_to_tag_and_subtype_ = {
    DesktopDeviceSessionLogInfo: (('desktop_device_session',), DesktopDeviceSessionLogInfo_validator),
    MobileDeviceSessionLogInfo: (('mobile_device_session',), MobileDeviceSessionLogInfo_validator),
    WebDeviceSessionLogInfo: (('web_device_session',), WebDeviceSessionLogInfo_validator),
    LegacyDeviceSessionLogInfo: (('legacy_device_session',), LegacyDeviceSessionLogInfo_validator),
}
DeviceSessionLogInfo._is_catch_all_ = True

DesktopDeviceSessionLogInfo.session_info.validator = bv.Nullable(DesktopSessionLogInfo_validator)
DesktopDeviceSessionLogInfo.host_name.validator = bv.String()
DesktopDeviceSessionLogInfo.client_type.validator = team.DesktopPlatform_validator
DesktopDeviceSessionLogInfo.client_version.validator = bv.Nullable(bv.String())
DesktopDeviceSessionLogInfo.platform.validator = bv.String()
DesktopDeviceSessionLogInfo.is_delete_on_unlink_supported.validator = bv.Boolean()
DesktopDeviceSessionLogInfo._field_names_ = set([
    'session_info',
    'host_name',
    'client_type',
    'client_version',
    'platform',
    'is_delete_on_unlink_supported',
])
DesktopDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(DesktopDeviceSessionLogInfo._field_names_)
DesktopDeviceSessionLogInfo._fields_ = [
    ('session_info', DesktopDeviceSessionLogInfo.session_info.validator),
    ('host_name', DesktopDeviceSessionLogInfo.host_name.validator),
    ('client_type', DesktopDeviceSessionLogInfo.client_type.validator),
    ('client_version', DesktopDeviceSessionLogInfo.client_version.validator),
    ('platform', DesktopDeviceSessionLogInfo.platform.validator),
    ('is_delete_on_unlink_supported', DesktopDeviceSessionLogInfo.is_delete_on_unlink_supported.validator),
]
DesktopDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + DesktopDeviceSessionLogInfo._fields_

SessionLogInfo.session_id.validator = bv.Nullable(common.SessionId_validator)
SessionLogInfo._field_names_ = set(['session_id'])
SessionLogInfo._all_field_names_ = SessionLogInfo._field_names_
SessionLogInfo._fields_ = [('session_id', SessionLogInfo.session_id.validator)]
SessionLogInfo._all_fields_ = SessionLogInfo._fields_

SessionLogInfo._tag_to_subtype_ = {
    ('web',): WebSessionLogInfo_validator,
    ('desktop',): DesktopSessionLogInfo_validator,
    ('mobile',): MobileSessionLogInfo_validator,
}
SessionLogInfo._pytype_to_tag_and_subtype_ = {
    WebSessionLogInfo: (('web',), WebSessionLogInfo_validator),
    DesktopSessionLogInfo: (('desktop',), DesktopSessionLogInfo_validator),
    MobileSessionLogInfo: (('mobile',), MobileSessionLogInfo_validator),
}
SessionLogInfo._is_catch_all_ = True

DesktopSessionLogInfo._field_names_ = set([])
DesktopSessionLogInfo._all_field_names_ = SessionLogInfo._all_field_names_.union(DesktopSessionLogInfo._field_names_)
DesktopSessionLogInfo._fields_ = []
DesktopSessionLogInfo._all_fields_ = SessionLogInfo._all_fields_ + DesktopSessionLogInfo._fields_

DeviceApprovalsAddExceptionDetails._all_field_names_ = set([])
DeviceApprovalsAddExceptionDetails._all_fields_ = []

DeviceApprovalsAddExceptionType.description.validator = bv.String()
DeviceApprovalsAddExceptionType._all_field_names_ = set(['description'])
DeviceApprovalsAddExceptionType._all_fields_ = [('description', DeviceApprovalsAddExceptionType.description.validator)]

DeviceApprovalsChangeDesktopPolicyDetails.new_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator)
DeviceApprovalsChangeDesktopPolicyDetails.previous_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator)
DeviceApprovalsChangeDesktopPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
DeviceApprovalsChangeDesktopPolicyDetails._all_fields_ = [
    ('new_value', DeviceApprovalsChangeDesktopPolicyDetails.new_value.validator),
    ('previous_value', DeviceApprovalsChangeDesktopPolicyDetails.previous_value.validator),
]

DeviceApprovalsChangeDesktopPolicyType.description.validator = bv.String()
DeviceApprovalsChangeDesktopPolicyType._all_field_names_ = set(['description'])
DeviceApprovalsChangeDesktopPolicyType._all_fields_ = [('description', DeviceApprovalsChangeDesktopPolicyType.description.validator)]

DeviceApprovalsChangeMobilePolicyDetails.new_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator)
DeviceApprovalsChangeMobilePolicyDetails.previous_value.validator = bv.Nullable(DeviceApprovalsPolicy_validator)
DeviceApprovalsChangeMobilePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
DeviceApprovalsChangeMobilePolicyDetails._all_fields_ = [
    ('new_value', DeviceApprovalsChangeMobilePolicyDetails.new_value.validator),
    ('previous_value', DeviceApprovalsChangeMobilePolicyDetails.previous_value.validator),
]

DeviceApprovalsChangeMobilePolicyType.description.validator = bv.String()
DeviceApprovalsChangeMobilePolicyType._all_field_names_ = set(['description'])
DeviceApprovalsChangeMobilePolicyType._all_fields_ = [('description', DeviceApprovalsChangeMobilePolicyType.description.validator)]

DeviceApprovalsChangeOverageActionDetails.new_value.validator = bv.Nullable(team_policies.RolloutMethod_validator)
DeviceApprovalsChangeOverageActionDetails.previous_value.validator = bv.Nullable(team_policies.RolloutMethod_validator)
DeviceApprovalsChangeOverageActionDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
DeviceApprovalsChangeOverageActionDetails._all_fields_ = [
    ('new_value', DeviceApprovalsChangeOverageActionDetails.new_value.validator),
    ('previous_value', DeviceApprovalsChangeOverageActionDetails.previous_value.validator),
]

DeviceApprovalsChangeOverageActionType.description.validator = bv.String()
DeviceApprovalsChangeOverageActionType._all_field_names_ = set(['description'])
DeviceApprovalsChangeOverageActionType._all_fields_ = [('description', DeviceApprovalsChangeOverageActionType.description.validator)]

DeviceApprovalsChangeUnlinkActionDetails.new_value.validator = bv.Nullable(DeviceUnlinkPolicy_validator)
DeviceApprovalsChangeUnlinkActionDetails.previous_value.validator = bv.Nullable(DeviceUnlinkPolicy_validator)
DeviceApprovalsChangeUnlinkActionDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
DeviceApprovalsChangeUnlinkActionDetails._all_fields_ = [
    ('new_value', DeviceApprovalsChangeUnlinkActionDetails.new_value.validator),
    ('previous_value', DeviceApprovalsChangeUnlinkActionDetails.previous_value.validator),
]

DeviceApprovalsChangeUnlinkActionType.description.validator = bv.String()
DeviceApprovalsChangeUnlinkActionType._all_field_names_ = set(['description'])
DeviceApprovalsChangeUnlinkActionType._all_fields_ = [('description', DeviceApprovalsChangeUnlinkActionType.description.validator)]

DeviceApprovalsPolicy._limited_validator = bv.Void()
DeviceApprovalsPolicy._unlimited_validator = bv.Void()
DeviceApprovalsPolicy._other_validator = bv.Void()
DeviceApprovalsPolicy._tagmap = {
    'limited': DeviceApprovalsPolicy._limited_validator,
    'unlimited': DeviceApprovalsPolicy._unlimited_validator,
    'other': DeviceApprovalsPolicy._other_validator,
}

DeviceApprovalsPolicy.limited = DeviceApprovalsPolicy('limited')
DeviceApprovalsPolicy.unlimited = DeviceApprovalsPolicy('unlimited')
DeviceApprovalsPolicy.other = DeviceApprovalsPolicy('other')

DeviceApprovalsRemoveExceptionDetails._all_field_names_ = set([])
DeviceApprovalsRemoveExceptionDetails._all_fields_ = []

DeviceApprovalsRemoveExceptionType.description.validator = bv.String()
DeviceApprovalsRemoveExceptionType._all_field_names_ = set(['description'])
DeviceApprovalsRemoveExceptionType._all_fields_ = [('description', DeviceApprovalsRemoveExceptionType.description.validator)]

DeviceChangeIpDesktopDetails.device_session_info.validator = DeviceSessionLogInfo_validator
DeviceChangeIpDesktopDetails._all_field_names_ = set(['device_session_info'])
DeviceChangeIpDesktopDetails._all_fields_ = [('device_session_info', DeviceChangeIpDesktopDetails.device_session_info.validator)]

DeviceChangeIpDesktopType.description.validator = bv.String()
DeviceChangeIpDesktopType._all_field_names_ = set(['description'])
DeviceChangeIpDesktopType._all_fields_ = [('description', DeviceChangeIpDesktopType.description.validator)]

DeviceChangeIpMobileDetails.device_session_info.validator = bv.Nullable(DeviceSessionLogInfo_validator)
DeviceChangeIpMobileDetails._all_field_names_ = set(['device_session_info'])
DeviceChangeIpMobileDetails._all_fields_ = [('device_session_info', DeviceChangeIpMobileDetails.device_session_info.validator)]

DeviceChangeIpMobileType.description.validator = bv.String()
DeviceChangeIpMobileType._all_field_names_ = set(['description'])
DeviceChangeIpMobileType._all_fields_ = [('description', DeviceChangeIpMobileType.description.validator)]

DeviceChangeIpWebDetails.user_agent.validator = bv.String()
DeviceChangeIpWebDetails._all_field_names_ = set(['user_agent'])
DeviceChangeIpWebDetails._all_fields_ = [('user_agent', DeviceChangeIpWebDetails.user_agent.validator)]

DeviceChangeIpWebType.description.validator = bv.String()
DeviceChangeIpWebType._all_field_names_ = set(['description'])
DeviceChangeIpWebType._all_fields_ = [('description', DeviceChangeIpWebType.description.validator)]

DeviceDeleteOnUnlinkFailDetails.session_info.validator = bv.Nullable(SessionLogInfo_validator)
DeviceDeleteOnUnlinkFailDetails.display_name.validator = bv.Nullable(bv.String())
DeviceDeleteOnUnlinkFailDetails.num_failures.validator = bv.Int64()
DeviceDeleteOnUnlinkFailDetails._all_field_names_ = set([
    'session_info',
    'display_name',
    'num_failures',
])
DeviceDeleteOnUnlinkFailDetails._all_fields_ = [
    ('session_info', DeviceDeleteOnUnlinkFailDetails.session_info.validator),
    ('display_name', DeviceDeleteOnUnlinkFailDetails.display_name.validator),
    ('num_failures', DeviceDeleteOnUnlinkFailDetails.num_failures.validator),
]

DeviceDeleteOnUnlinkFailType.description.validator = bv.String()
DeviceDeleteOnUnlinkFailType._all_field_names_ = set(['description'])
DeviceDeleteOnUnlinkFailType._all_fields_ = [('description', DeviceDeleteOnUnlinkFailType.description.validator)]

DeviceDeleteOnUnlinkSuccessDetails.session_info.validator = bv.Nullable(SessionLogInfo_validator)
DeviceDeleteOnUnlinkSuccessDetails.display_name.validator = bv.Nullable(bv.String())
DeviceDeleteOnUnlinkSuccessDetails._all_field_names_ = set([
    'session_info',
    'display_name',
])
DeviceDeleteOnUnlinkSuccessDetails._all_fields_ = [
    ('session_info', DeviceDeleteOnUnlinkSuccessDetails.session_info.validator),
    ('display_name', DeviceDeleteOnUnlinkSuccessDetails.display_name.validator),
]

DeviceDeleteOnUnlinkSuccessType.description.validator = bv.String()
DeviceDeleteOnUnlinkSuccessType._all_field_names_ = set(['description'])
DeviceDeleteOnUnlinkSuccessType._all_fields_ = [('description', DeviceDeleteOnUnlinkSuccessType.description.validator)]

DeviceLinkFailDetails.ip_address.validator = bv.Nullable(IpAddress_validator)
DeviceLinkFailDetails.device_type.validator = DeviceType_validator
DeviceLinkFailDetails._all_field_names_ = set([
    'ip_address',
    'device_type',
])
DeviceLinkFailDetails._all_fields_ = [
    ('ip_address', DeviceLinkFailDetails.ip_address.validator),
    ('device_type', DeviceLinkFailDetails.device_type.validator),
]

DeviceLinkFailType.description.validator = bv.String()
DeviceLinkFailType._all_field_names_ = set(['description'])
DeviceLinkFailType._all_fields_ = [('description', DeviceLinkFailType.description.validator)]

DeviceLinkSuccessDetails.device_session_info.validator = bv.Nullable(DeviceSessionLogInfo_validator)
DeviceLinkSuccessDetails._all_field_names_ = set(['device_session_info'])
DeviceLinkSuccessDetails._all_fields_ = [('device_session_info', DeviceLinkSuccessDetails.device_session_info.validator)]

DeviceLinkSuccessType.description.validator = bv.String()
DeviceLinkSuccessType._all_field_names_ = set(['description'])
DeviceLinkSuccessType._all_fields_ = [('description', DeviceLinkSuccessType.description.validator)]

DeviceManagementDisabledDetails._all_field_names_ = set([])
DeviceManagementDisabledDetails._all_fields_ = []

DeviceManagementDisabledType.description.validator = bv.String()
DeviceManagementDisabledType._all_field_names_ = set(['description'])
DeviceManagementDisabledType._all_fields_ = [('description', DeviceManagementDisabledType.description.validator)]

DeviceManagementEnabledDetails._all_field_names_ = set([])
DeviceManagementEnabledDetails._all_fields_ = []

DeviceManagementEnabledType.description.validator = bv.String()
DeviceManagementEnabledType._all_field_names_ = set(['description'])
DeviceManagementEnabledType._all_fields_ = [('description', DeviceManagementEnabledType.description.validator)]

DeviceSyncBackupStatusChangedDetails.desktop_device_session_info.validator = DesktopDeviceSessionLogInfo_validator
DeviceSyncBackupStatusChangedDetails.previous_value.validator = BackupStatus_validator
DeviceSyncBackupStatusChangedDetails.new_value.validator = BackupStatus_validator
DeviceSyncBackupStatusChangedDetails._all_field_names_ = set([
    'desktop_device_session_info',
    'previous_value',
    'new_value',
])
DeviceSyncBackupStatusChangedDetails._all_fields_ = [
    ('desktop_device_session_info', DeviceSyncBackupStatusChangedDetails.desktop_device_session_info.validator),
    ('previous_value', DeviceSyncBackupStatusChangedDetails.previous_value.validator),
    ('new_value', DeviceSyncBackupStatusChangedDetails.new_value.validator),
]

DeviceSyncBackupStatusChangedType.description.validator = bv.String()
DeviceSyncBackupStatusChangedType._all_field_names_ = set(['description'])
DeviceSyncBackupStatusChangedType._all_fields_ = [('description', DeviceSyncBackupStatusChangedType.description.validator)]

DeviceType._desktop_validator = bv.Void()
DeviceType._mobile_validator = bv.Void()
DeviceType._other_validator = bv.Void()
DeviceType._tagmap = {
    'desktop': DeviceType._desktop_validator,
    'mobile': DeviceType._mobile_validator,
    'other': DeviceType._other_validator,
}

DeviceType.desktop = DeviceType('desktop')
DeviceType.mobile = DeviceType('mobile')
DeviceType.other = DeviceType('other')

DeviceUnlinkDetails.session_info.validator = bv.Nullable(SessionLogInfo_validator)
DeviceUnlinkDetails.display_name.validator = bv.Nullable(bv.String())
DeviceUnlinkDetails.delete_data.validator = bv.Boolean()
DeviceUnlinkDetails._all_field_names_ = set([
    'session_info',
    'display_name',
    'delete_data',
])
DeviceUnlinkDetails._all_fields_ = [
    ('session_info', DeviceUnlinkDetails.session_info.validator),
    ('display_name', DeviceUnlinkDetails.display_name.validator),
    ('delete_data', DeviceUnlinkDetails.delete_data.validator),
]

DeviceUnlinkPolicy._keep_validator = bv.Void()
DeviceUnlinkPolicy._remove_validator = bv.Void()
DeviceUnlinkPolicy._other_validator = bv.Void()
DeviceUnlinkPolicy._tagmap = {
    'keep': DeviceUnlinkPolicy._keep_validator,
    'remove': DeviceUnlinkPolicy._remove_validator,
    'other': DeviceUnlinkPolicy._other_validator,
}

DeviceUnlinkPolicy.keep = DeviceUnlinkPolicy('keep')
DeviceUnlinkPolicy.remove = DeviceUnlinkPolicy('remove')
DeviceUnlinkPolicy.other = DeviceUnlinkPolicy('other')

DeviceUnlinkType.description.validator = bv.String()
DeviceUnlinkType._all_field_names_ = set(['description'])
DeviceUnlinkType._all_fields_ = [('description', DeviceUnlinkType.description.validator)]

DirectoryRestrictionsAddMembersDetails._all_field_names_ = set([])
DirectoryRestrictionsAddMembersDetails._all_fields_ = []

DirectoryRestrictionsAddMembersType.description.validator = bv.String()
DirectoryRestrictionsAddMembersType._all_field_names_ = set(['description'])
DirectoryRestrictionsAddMembersType._all_fields_ = [('description', DirectoryRestrictionsAddMembersType.description.validator)]

DirectoryRestrictionsRemoveMembersDetails._all_field_names_ = set([])
DirectoryRestrictionsRemoveMembersDetails._all_fields_ = []

DirectoryRestrictionsRemoveMembersType.description.validator = bv.String()
DirectoryRestrictionsRemoveMembersType._all_field_names_ = set(['description'])
DirectoryRestrictionsRemoveMembersType._all_fields_ = [('description', DirectoryRestrictionsRemoveMembersType.description.validator)]

DisabledDomainInvitesDetails._all_field_names_ = set([])
DisabledDomainInvitesDetails._all_fields_ = []

DisabledDomainInvitesType.description.validator = bv.String()
DisabledDomainInvitesType._all_field_names_ = set(['description'])
DisabledDomainInvitesType._all_fields_ = [('description', DisabledDomainInvitesType.description.validator)]

DispositionActionType._automatic_delete_validator = bv.Void()
DispositionActionType._automatic_permanently_delete_validator = bv.Void()
DispositionActionType._other_validator = bv.Void()
DispositionActionType._tagmap = {
    'automatic_delete': DispositionActionType._automatic_delete_validator,
    'automatic_permanently_delete': DispositionActionType._automatic_permanently_delete_validator,
    'other': DispositionActionType._other_validator,
}

DispositionActionType.automatic_delete = DispositionActionType('automatic_delete')
DispositionActionType.automatic_permanently_delete = DispositionActionType('automatic_permanently_delete')
DispositionActionType.other = DispositionActionType('other')

DomainInvitesApproveRequestToJoinTeamDetails._all_field_names_ = set([])
DomainInvitesApproveRequestToJoinTeamDetails._all_fields_ = []

DomainInvitesApproveRequestToJoinTeamType.description.validator = bv.String()
DomainInvitesApproveRequestToJoinTeamType._all_field_names_ = set(['description'])
DomainInvitesApproveRequestToJoinTeamType._all_fields_ = [('description', DomainInvitesApproveRequestToJoinTeamType.description.validator)]

DomainInvitesDeclineRequestToJoinTeamDetails._all_field_names_ = set([])
DomainInvitesDeclineRequestToJoinTeamDetails._all_fields_ = []

DomainInvitesDeclineRequestToJoinTeamType.description.validator = bv.String()
DomainInvitesDeclineRequestToJoinTeamType._all_field_names_ = set(['description'])
DomainInvitesDeclineRequestToJoinTeamType._all_fields_ = [('description', DomainInvitesDeclineRequestToJoinTeamType.description.validator)]

DomainInvitesEmailExistingUsersDetails.domain_name.validator = bv.String()
DomainInvitesEmailExistingUsersDetails.num_recipients.validator = bv.UInt64()
DomainInvitesEmailExistingUsersDetails._all_field_names_ = set([
    'domain_name',
    'num_recipients',
])
DomainInvitesEmailExistingUsersDetails._all_fields_ = [
    ('domain_name', DomainInvitesEmailExistingUsersDetails.domain_name.validator),
    ('num_recipients', DomainInvitesEmailExistingUsersDetails.num_recipients.validator),
]

DomainInvitesEmailExistingUsersType.description.validator = bv.String()
DomainInvitesEmailExistingUsersType._all_field_names_ = set(['description'])
DomainInvitesEmailExistingUsersType._all_fields_ = [('description', DomainInvitesEmailExistingUsersType.description.validator)]

DomainInvitesRequestToJoinTeamDetails._all_field_names_ = set([])
DomainInvitesRequestToJoinTeamDetails._all_fields_ = []

DomainInvitesRequestToJoinTeamType.description.validator = bv.String()
DomainInvitesRequestToJoinTeamType._all_field_names_ = set(['description'])
DomainInvitesRequestToJoinTeamType._all_fields_ = [('description', DomainInvitesRequestToJoinTeamType.description.validator)]

DomainInvitesSetInviteNewUserPrefToNoDetails._all_field_names_ = set([])
DomainInvitesSetInviteNewUserPrefToNoDetails._all_fields_ = []

DomainInvitesSetInviteNewUserPrefToNoType.description.validator = bv.String()
DomainInvitesSetInviteNewUserPrefToNoType._all_field_names_ = set(['description'])
DomainInvitesSetInviteNewUserPrefToNoType._all_fields_ = [('description', DomainInvitesSetInviteNewUserPrefToNoType.description.validator)]

DomainInvitesSetInviteNewUserPrefToYesDetails._all_field_names_ = set([])
DomainInvitesSetInviteNewUserPrefToYesDetails._all_fields_ = []

DomainInvitesSetInviteNewUserPrefToYesType.description.validator = bv.String()
DomainInvitesSetInviteNewUserPrefToYesType._all_field_names_ = set(['description'])
DomainInvitesSetInviteNewUserPrefToYesType._all_fields_ = [('description', DomainInvitesSetInviteNewUserPrefToYesType.description.validator)]

DomainVerificationAddDomainFailDetails.domain_name.validator = bv.String()
DomainVerificationAddDomainFailDetails.verification_method.validator = bv.Nullable(bv.String())
DomainVerificationAddDomainFailDetails._all_field_names_ = set([
    'domain_name',
    'verification_method',
])
DomainVerificationAddDomainFailDetails._all_fields_ = [
    ('domain_name', DomainVerificationAddDomainFailDetails.domain_name.validator),
    ('verification_method', DomainVerificationAddDomainFailDetails.verification_method.validator),
]

DomainVerificationAddDomainFailType.description.validator = bv.String()
DomainVerificationAddDomainFailType._all_field_names_ = set(['description'])
DomainVerificationAddDomainFailType._all_fields_ = [('description', DomainVerificationAddDomainFailType.description.validator)]

DomainVerificationAddDomainSuccessDetails.domain_names.validator = bv.List(bv.String())
DomainVerificationAddDomainSuccessDetails.verification_method.validator = bv.Nullable(bv.String())
DomainVerificationAddDomainSuccessDetails._all_field_names_ = set([
    'domain_names',
    'verification_method',
])
DomainVerificationAddDomainSuccessDetails._all_fields_ = [
    ('domain_names', DomainVerificationAddDomainSuccessDetails.domain_names.validator),
    ('verification_method', DomainVerificationAddDomainSuccessDetails.verification_method.validator),
]

DomainVerificationAddDomainSuccessType.description.validator = bv.String()
DomainVerificationAddDomainSuccessType._all_field_names_ = set(['description'])
DomainVerificationAddDomainSuccessType._all_fields_ = [('description', DomainVerificationAddDomainSuccessType.description.validator)]

DomainVerificationRemoveDomainDetails.domain_names.validator = bv.List(bv.String())
DomainVerificationRemoveDomainDetails._all_field_names_ = set(['domain_names'])
DomainVerificationRemoveDomainDetails._all_fields_ = [('domain_names', DomainVerificationRemoveDomainDetails.domain_names.validator)]

DomainVerificationRemoveDomainType.description.validator = bv.String()
DomainVerificationRemoveDomainType._all_field_names_ = set(['description'])
DomainVerificationRemoveDomainType._all_fields_ = [('description', DomainVerificationRemoveDomainType.description.validator)]

DownloadPolicyType._allow_validator = bv.Void()
DownloadPolicyType._disallow_validator = bv.Void()
DownloadPolicyType._other_validator = bv.Void()
DownloadPolicyType._tagmap = {
    'allow': DownloadPolicyType._allow_validator,
    'disallow': DownloadPolicyType._disallow_validator,
    'other': DownloadPolicyType._other_validator,
}

DownloadPolicyType.allow = DownloadPolicyType('allow')
DownloadPolicyType.disallow = DownloadPolicyType('disallow')
DownloadPolicyType.other = DownloadPolicyType('other')

DropboxPasswordsExportedDetails.platform.validator = bv.String()
DropboxPasswordsExportedDetails._all_field_names_ = set(['platform'])
DropboxPasswordsExportedDetails._all_fields_ = [('platform', DropboxPasswordsExportedDetails.platform.validator)]

DropboxPasswordsExportedType.description.validator = bv.String()
DropboxPasswordsExportedType._all_field_names_ = set(['description'])
DropboxPasswordsExportedType._all_fields_ = [('description', DropboxPasswordsExportedType.description.validator)]

DropboxPasswordsNewDeviceEnrolledDetails.is_first_device.validator = bv.Boolean()
DropboxPasswordsNewDeviceEnrolledDetails.platform.validator = bv.String()
DropboxPasswordsNewDeviceEnrolledDetails._all_field_names_ = set([
    'is_first_device',
    'platform',
])
DropboxPasswordsNewDeviceEnrolledDetails._all_fields_ = [
    ('is_first_device', DropboxPasswordsNewDeviceEnrolledDetails.is_first_device.validator),
    ('platform', DropboxPasswordsNewDeviceEnrolledDetails.platform.validator),
]

DropboxPasswordsNewDeviceEnrolledType.description.validator = bv.String()
DropboxPasswordsNewDeviceEnrolledType._all_field_names_ = set(['description'])
DropboxPasswordsNewDeviceEnrolledType._all_fields_ = [('description', DropboxPasswordsNewDeviceEnrolledType.description.validator)]

DropboxPasswordsPolicy._default_validator = bv.Void()
DropboxPasswordsPolicy._disabled_validator = bv.Void()
DropboxPasswordsPolicy._enabled_validator = bv.Void()
DropboxPasswordsPolicy._other_validator = bv.Void()
DropboxPasswordsPolicy._tagmap = {
    'default': DropboxPasswordsPolicy._default_validator,
    'disabled': DropboxPasswordsPolicy._disabled_validator,
    'enabled': DropboxPasswordsPolicy._enabled_validator,
    'other': DropboxPasswordsPolicy._other_validator,
}

DropboxPasswordsPolicy.default = DropboxPasswordsPolicy('default')
DropboxPasswordsPolicy.disabled = DropboxPasswordsPolicy('disabled')
DropboxPasswordsPolicy.enabled = DropboxPasswordsPolicy('enabled')
DropboxPasswordsPolicy.other = DropboxPasswordsPolicy('other')

DropboxPasswordsPolicyChangedDetails.new_value.validator = DropboxPasswordsPolicy_validator
DropboxPasswordsPolicyChangedDetails.previous_value.validator = DropboxPasswordsPolicy_validator
DropboxPasswordsPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
DropboxPasswordsPolicyChangedDetails._all_fields_ = [
    ('new_value', DropboxPasswordsPolicyChangedDetails.new_value.validator),
    ('previous_value', DropboxPasswordsPolicyChangedDetails.previous_value.validator),
]

DropboxPasswordsPolicyChangedType.description.validator = bv.String()
DropboxPasswordsPolicyChangedType._all_field_names_ = set(['description'])
DropboxPasswordsPolicyChangedType._all_fields_ = [('description', DropboxPasswordsPolicyChangedType.description.validator)]

DurationLogInfo.unit.validator = TimeUnit_validator
DurationLogInfo.amount.validator = bv.UInt64()
DurationLogInfo._all_field_names_ = set([
    'unit',
    'amount',
])
DurationLogInfo._all_fields_ = [
    ('unit', DurationLogInfo.unit.validator),
    ('amount', DurationLogInfo.amount.validator),
]

EmailIngestPolicy._disabled_validator = bv.Void()
EmailIngestPolicy._enabled_validator = bv.Void()
EmailIngestPolicy._other_validator = bv.Void()
EmailIngestPolicy._tagmap = {
    'disabled': EmailIngestPolicy._disabled_validator,
    'enabled': EmailIngestPolicy._enabled_validator,
    'other': EmailIngestPolicy._other_validator,
}

EmailIngestPolicy.disabled = EmailIngestPolicy('disabled')
EmailIngestPolicy.enabled = EmailIngestPolicy('enabled')
EmailIngestPolicy.other = EmailIngestPolicy('other')

EmailIngestPolicyChangedDetails.new_value.validator = EmailIngestPolicy_validator
EmailIngestPolicyChangedDetails.previous_value.validator = EmailIngestPolicy_validator
EmailIngestPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
EmailIngestPolicyChangedDetails._all_fields_ = [
    ('new_value', EmailIngestPolicyChangedDetails.new_value.validator),
    ('previous_value', EmailIngestPolicyChangedDetails.previous_value.validator),
]

EmailIngestPolicyChangedType.description.validator = bv.String()
EmailIngestPolicyChangedType._all_field_names_ = set(['description'])
EmailIngestPolicyChangedType._all_fields_ = [('description', EmailIngestPolicyChangedType.description.validator)]

EmailIngestReceiveFileDetails.inbox_name.validator = bv.String()
EmailIngestReceiveFileDetails.attachment_names.validator = bv.List(bv.String())
EmailIngestReceiveFileDetails.subject.validator = bv.Nullable(bv.String())
EmailIngestReceiveFileDetails.from_name.validator = bv.Nullable(common.DisplayNameLegacy_validator)
EmailIngestReceiveFileDetails.from_email.validator = bv.Nullable(EmailAddress_validator)
EmailIngestReceiveFileDetails._all_field_names_ = set([
    'inbox_name',
    'attachment_names',
    'subject',
    'from_name',
    'from_email',
])
EmailIngestReceiveFileDetails._all_fields_ = [
    ('inbox_name', EmailIngestReceiveFileDetails.inbox_name.validator),
    ('attachment_names', EmailIngestReceiveFileDetails.attachment_names.validator),
    ('subject', EmailIngestReceiveFileDetails.subject.validator),
    ('from_name', EmailIngestReceiveFileDetails.from_name.validator),
    ('from_email', EmailIngestReceiveFileDetails.from_email.validator),
]

EmailIngestReceiveFileType.description.validator = bv.String()
EmailIngestReceiveFileType._all_field_names_ = set(['description'])
EmailIngestReceiveFileType._all_fields_ = [('description', EmailIngestReceiveFileType.description.validator)]

EmmAddExceptionDetails._all_field_names_ = set([])
EmmAddExceptionDetails._all_fields_ = []

EmmAddExceptionType.description.validator = bv.String()
EmmAddExceptionType._all_field_names_ = set(['description'])
EmmAddExceptionType._all_fields_ = [('description', EmmAddExceptionType.description.validator)]

EmmChangePolicyDetails.new_value.validator = team_policies.EmmState_validator
EmmChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.EmmState_validator)
EmmChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
EmmChangePolicyDetails._all_fields_ = [
    ('new_value', EmmChangePolicyDetails.new_value.validator),
    ('previous_value', EmmChangePolicyDetails.previous_value.validator),
]

EmmChangePolicyType.description.validator = bv.String()
EmmChangePolicyType._all_field_names_ = set(['description'])
EmmChangePolicyType._all_fields_ = [('description', EmmChangePolicyType.description.validator)]

EmmCreateExceptionsReportDetails._all_field_names_ = set([])
EmmCreateExceptionsReportDetails._all_fields_ = []

EmmCreateExceptionsReportType.description.validator = bv.String()
EmmCreateExceptionsReportType._all_field_names_ = set(['description'])
EmmCreateExceptionsReportType._all_fields_ = [('description', EmmCreateExceptionsReportType.description.validator)]

EmmCreateUsageReportDetails._all_field_names_ = set([])
EmmCreateUsageReportDetails._all_fields_ = []

EmmCreateUsageReportType.description.validator = bv.String()
EmmCreateUsageReportType._all_field_names_ = set(['description'])
EmmCreateUsageReportType._all_fields_ = [('description', EmmCreateUsageReportType.description.validator)]

EmmErrorDetails.error_details.validator = FailureDetailsLogInfo_validator
EmmErrorDetails._all_field_names_ = set(['error_details'])
EmmErrorDetails._all_fields_ = [('error_details', EmmErrorDetails.error_details.validator)]

EmmErrorType.description.validator = bv.String()
EmmErrorType._all_field_names_ = set(['description'])
EmmErrorType._all_fields_ = [('description', EmmErrorType.description.validator)]

EmmRefreshAuthTokenDetails._all_field_names_ = set([])
EmmRefreshAuthTokenDetails._all_fields_ = []

EmmRefreshAuthTokenType.description.validator = bv.String()
EmmRefreshAuthTokenType._all_field_names_ = set(['description'])
EmmRefreshAuthTokenType._all_fields_ = [('description', EmmRefreshAuthTokenType.description.validator)]

EmmRemoveExceptionDetails._all_field_names_ = set([])
EmmRemoveExceptionDetails._all_fields_ = []

EmmRemoveExceptionType.description.validator = bv.String()
EmmRemoveExceptionType._all_field_names_ = set(['description'])
EmmRemoveExceptionType._all_fields_ = [('description', EmmRemoveExceptionType.description.validator)]

EnabledDomainInvitesDetails._all_field_names_ = set([])
EnabledDomainInvitesDetails._all_fields_ = []

EnabledDomainInvitesType.description.validator = bv.String()
EnabledDomainInvitesType._all_field_names_ = set(['description'])
EnabledDomainInvitesType._all_fields_ = [('description', EnabledDomainInvitesType.description.validator)]

EndedEnterpriseAdminSessionDeprecatedDetails.federation_extra_details.validator = FedExtraDetails_validator
EndedEnterpriseAdminSessionDeprecatedDetails._all_field_names_ = set(['federation_extra_details'])
EndedEnterpriseAdminSessionDeprecatedDetails._all_fields_ = [('federation_extra_details', EndedEnterpriseAdminSessionDeprecatedDetails.federation_extra_details.validator)]

EndedEnterpriseAdminSessionDeprecatedType.description.validator = bv.String()
EndedEnterpriseAdminSessionDeprecatedType._all_field_names_ = set(['description'])
EndedEnterpriseAdminSessionDeprecatedType._all_fields_ = [('description', EndedEnterpriseAdminSessionDeprecatedType.description.validator)]

EndedEnterpriseAdminSessionDetails._all_field_names_ = set([])
EndedEnterpriseAdminSessionDetails._all_fields_ = []

EndedEnterpriseAdminSessionType.description.validator = bv.String()
EndedEnterpriseAdminSessionType._all_field_names_ = set(['description'])
EndedEnterpriseAdminSessionType._all_fields_ = [('description', EndedEnterpriseAdminSessionType.description.validator)]

EnforceLinkPasswordPolicy._optional_validator = bv.Void()
EnforceLinkPasswordPolicy._required_validator = bv.Void()
EnforceLinkPasswordPolicy._other_validator = bv.Void()
EnforceLinkPasswordPolicy._tagmap = {
    'optional': EnforceLinkPasswordPolicy._optional_validator,
    'required': EnforceLinkPasswordPolicy._required_validator,
    'other': EnforceLinkPasswordPolicy._other_validator,
}

EnforceLinkPasswordPolicy.optional = EnforceLinkPasswordPolicy('optional')
EnforceLinkPasswordPolicy.required = EnforceLinkPasswordPolicy('required')
EnforceLinkPasswordPolicy.other = EnforceLinkPasswordPolicy('other')

EnterpriseSettingsLockingDetails.team_name.validator = bv.String()
EnterpriseSettingsLockingDetails.settings_page_name.validator = bv.String()
EnterpriseSettingsLockingDetails.previous_settings_page_locking_state.validator = bv.String()
EnterpriseSettingsLockingDetails.new_settings_page_locking_state.validator = bv.String()
EnterpriseSettingsLockingDetails._all_field_names_ = set([
    'team_name',
    'settings_page_name',
    'previous_settings_page_locking_state',
    'new_settings_page_locking_state',
])
EnterpriseSettingsLockingDetails._all_fields_ = [
    ('team_name', EnterpriseSettingsLockingDetails.team_name.validator),
    ('settings_page_name', EnterpriseSettingsLockingDetails.settings_page_name.validator),
    ('previous_settings_page_locking_state', EnterpriseSettingsLockingDetails.previous_settings_page_locking_state.validator),
    ('new_settings_page_locking_state', EnterpriseSettingsLockingDetails.new_settings_page_locking_state.validator),
]

EnterpriseSettingsLockingType.description.validator = bv.String()
EnterpriseSettingsLockingType._all_field_names_ = set(['description'])
EnterpriseSettingsLockingType._all_fields_ = [('description', EnterpriseSettingsLockingType.description.validator)]

EventCategory._admin_alerting_validator = bv.Void()
EventCategory._apps_validator = bv.Void()
EventCategory._comments_validator = bv.Void()
EventCategory._data_governance_validator = bv.Void()
EventCategory._devices_validator = bv.Void()
EventCategory._domains_validator = bv.Void()
EventCategory._file_operations_validator = bv.Void()
EventCategory._file_requests_validator = bv.Void()
EventCategory._groups_validator = bv.Void()
EventCategory._logins_validator = bv.Void()
EventCategory._members_validator = bv.Void()
EventCategory._paper_validator = bv.Void()
EventCategory._passwords_validator = bv.Void()
EventCategory._reports_validator = bv.Void()
EventCategory._sharing_validator = bv.Void()
EventCategory._showcase_validator = bv.Void()
EventCategory._sso_validator = bv.Void()
EventCategory._team_folders_validator = bv.Void()
EventCategory._team_policies_validator = bv.Void()
EventCategory._team_profile_validator = bv.Void()
EventCategory._tfa_validator = bv.Void()
EventCategory._trusted_teams_validator = bv.Void()
EventCategory._other_validator = bv.Void()
EventCategory._tagmap = {
    'admin_alerting': EventCategory._admin_alerting_validator,
    'apps': EventCategory._apps_validator,
    'comments': EventCategory._comments_validator,
    'data_governance': EventCategory._data_governance_validator,
    'devices': EventCategory._devices_validator,
    'domains': EventCategory._domains_validator,
    'file_operations': EventCategory._file_operations_validator,
    'file_requests': EventCategory._file_requests_validator,
    'groups': EventCategory._groups_validator,
    'logins': EventCategory._logins_validator,
    'members': EventCategory._members_validator,
    'paper': EventCategory._paper_validator,
    'passwords': EventCategory._passwords_validator,
    'reports': EventCategory._reports_validator,
    'sharing': EventCategory._sharing_validator,
    'showcase': EventCategory._showcase_validator,
    'sso': EventCategory._sso_validator,
    'team_folders': EventCategory._team_folders_validator,
    'team_policies': EventCategory._team_policies_validator,
    'team_profile': EventCategory._team_profile_validator,
    'tfa': EventCategory._tfa_validator,
    'trusted_teams': EventCategory._trusted_teams_validator,
    'other': EventCategory._other_validator,
}

EventCategory.admin_alerting = EventCategory('admin_alerting')
EventCategory.apps = EventCategory('apps')
EventCategory.comments = EventCategory('comments')
EventCategory.data_governance = EventCategory('data_governance')
EventCategory.devices = EventCategory('devices')
EventCategory.domains = EventCategory('domains')
EventCategory.file_operations = EventCategory('file_operations')
EventCategory.file_requests = EventCategory('file_requests')
EventCategory.groups = EventCategory('groups')
EventCategory.logins = EventCategory('logins')
EventCategory.members = EventCategory('members')
EventCategory.paper = EventCategory('paper')
EventCategory.passwords = EventCategory('passwords')
EventCategory.reports = EventCategory('reports')
EventCategory.sharing = EventCategory('sharing')
EventCategory.showcase = EventCategory('showcase')
EventCategory.sso = EventCategory('sso')
EventCategory.team_folders = EventCategory('team_folders')
EventCategory.team_policies = EventCategory('team_policies')
EventCategory.team_profile = EventCategory('team_profile')
EventCategory.tfa = EventCategory('tfa')
EventCategory.trusted_teams = EventCategory('trusted_teams')
EventCategory.other = EventCategory('other')

EventDetails._admin_alerting_alert_state_changed_details_validator = AdminAlertingAlertStateChangedDetails_validator
EventDetails._admin_alerting_changed_alert_config_details_validator = AdminAlertingChangedAlertConfigDetails_validator
EventDetails._admin_alerting_triggered_alert_details_validator = AdminAlertingTriggeredAlertDetails_validator
EventDetails._app_blocked_by_permissions_details_validator = AppBlockedByPermissionsDetails_validator
EventDetails._app_link_team_details_validator = AppLinkTeamDetails_validator
EventDetails._app_link_user_details_validator = AppLinkUserDetails_validator
EventDetails._app_unlink_team_details_validator = AppUnlinkTeamDetails_validator
EventDetails._app_unlink_user_details_validator = AppUnlinkUserDetails_validator
EventDetails._integration_connected_details_validator = IntegrationConnectedDetails_validator
EventDetails._integration_disconnected_details_validator = IntegrationDisconnectedDetails_validator
EventDetails._file_add_comment_details_validator = FileAddCommentDetails_validator
EventDetails._file_change_comment_subscription_details_validator = FileChangeCommentSubscriptionDetails_validator
EventDetails._file_delete_comment_details_validator = FileDeleteCommentDetails_validator
EventDetails._file_edit_comment_details_validator = FileEditCommentDetails_validator
EventDetails._file_like_comment_details_validator = FileLikeCommentDetails_validator
EventDetails._file_resolve_comment_details_validator = FileResolveCommentDetails_validator
EventDetails._file_unlike_comment_details_validator = FileUnlikeCommentDetails_validator
EventDetails._file_unresolve_comment_details_validator = FileUnresolveCommentDetails_validator
EventDetails._governance_policy_add_folders_details_validator = GovernancePolicyAddFoldersDetails_validator
EventDetails._governance_policy_add_folder_failed_details_validator = GovernancePolicyAddFolderFailedDetails_validator
EventDetails._governance_policy_content_disposed_details_validator = GovernancePolicyContentDisposedDetails_validator
EventDetails._governance_policy_create_details_validator = GovernancePolicyCreateDetails_validator
EventDetails._governance_policy_delete_details_validator = GovernancePolicyDeleteDetails_validator
EventDetails._governance_policy_edit_details_details_validator = GovernancePolicyEditDetailsDetails_validator
EventDetails._governance_policy_edit_duration_details_validator = GovernancePolicyEditDurationDetails_validator
EventDetails._governance_policy_export_created_details_validator = GovernancePolicyExportCreatedDetails_validator
EventDetails._governance_policy_export_removed_details_validator = GovernancePolicyExportRemovedDetails_validator
EventDetails._governance_policy_remove_folders_details_validator = GovernancePolicyRemoveFoldersDetails_validator
EventDetails._governance_policy_report_created_details_validator = GovernancePolicyReportCreatedDetails_validator
EventDetails._governance_policy_zip_part_downloaded_details_validator = GovernancePolicyZipPartDownloadedDetails_validator
EventDetails._legal_holds_activate_a_hold_details_validator = LegalHoldsActivateAHoldDetails_validator
EventDetails._legal_holds_add_members_details_validator = LegalHoldsAddMembersDetails_validator
EventDetails._legal_holds_change_hold_details_details_validator = LegalHoldsChangeHoldDetailsDetails_validator
EventDetails._legal_holds_change_hold_name_details_validator = LegalHoldsChangeHoldNameDetails_validator
EventDetails._legal_holds_export_a_hold_details_validator = LegalHoldsExportAHoldDetails_validator
EventDetails._legal_holds_export_cancelled_details_validator = LegalHoldsExportCancelledDetails_validator
EventDetails._legal_holds_export_downloaded_details_validator = LegalHoldsExportDownloadedDetails_validator
EventDetails._legal_holds_export_removed_details_validator = LegalHoldsExportRemovedDetails_validator
EventDetails._legal_holds_release_a_hold_details_validator = LegalHoldsReleaseAHoldDetails_validator
EventDetails._legal_holds_remove_members_details_validator = LegalHoldsRemoveMembersDetails_validator
EventDetails._legal_holds_report_a_hold_details_validator = LegalHoldsReportAHoldDetails_validator
EventDetails._device_change_ip_desktop_details_validator = DeviceChangeIpDesktopDetails_validator
EventDetails._device_change_ip_mobile_details_validator = DeviceChangeIpMobileDetails_validator
EventDetails._device_change_ip_web_details_validator = DeviceChangeIpWebDetails_validator
EventDetails._device_delete_on_unlink_fail_details_validator = DeviceDeleteOnUnlinkFailDetails_validator
EventDetails._device_delete_on_unlink_success_details_validator = DeviceDeleteOnUnlinkSuccessDetails_validator
EventDetails._device_link_fail_details_validator = DeviceLinkFailDetails_validator
EventDetails._device_link_success_details_validator = DeviceLinkSuccessDetails_validator
EventDetails._device_management_disabled_details_validator = DeviceManagementDisabledDetails_validator
EventDetails._device_management_enabled_details_validator = DeviceManagementEnabledDetails_validator
EventDetails._device_sync_backup_status_changed_details_validator = DeviceSyncBackupStatusChangedDetails_validator
EventDetails._device_unlink_details_validator = DeviceUnlinkDetails_validator
EventDetails._dropbox_passwords_exported_details_validator = DropboxPasswordsExportedDetails_validator
EventDetails._dropbox_passwords_new_device_enrolled_details_validator = DropboxPasswordsNewDeviceEnrolledDetails_validator
EventDetails._emm_refresh_auth_token_details_validator = EmmRefreshAuthTokenDetails_validator
EventDetails._external_drive_backup_eligibility_status_checked_details_validator = ExternalDriveBackupEligibilityStatusCheckedDetails_validator
EventDetails._external_drive_backup_status_changed_details_validator = ExternalDriveBackupStatusChangedDetails_validator
EventDetails._account_capture_change_availability_details_validator = AccountCaptureChangeAvailabilityDetails_validator
EventDetails._account_capture_migrate_account_details_validator = AccountCaptureMigrateAccountDetails_validator
EventDetails._account_capture_notification_emails_sent_details_validator = AccountCaptureNotificationEmailsSentDetails_validator
EventDetails._account_capture_relinquish_account_details_validator = AccountCaptureRelinquishAccountDetails_validator
EventDetails._disabled_domain_invites_details_validator = DisabledDomainInvitesDetails_validator
EventDetails._domain_invites_approve_request_to_join_team_details_validator = DomainInvitesApproveRequestToJoinTeamDetails_validator
EventDetails._domain_invites_decline_request_to_join_team_details_validator = DomainInvitesDeclineRequestToJoinTeamDetails_validator
EventDetails._domain_invites_email_existing_users_details_validator = DomainInvitesEmailExistingUsersDetails_validator
EventDetails._domain_invites_request_to_join_team_details_validator = DomainInvitesRequestToJoinTeamDetails_validator
EventDetails._domain_invites_set_invite_new_user_pref_to_no_details_validator = DomainInvitesSetInviteNewUserPrefToNoDetails_validator
EventDetails._domain_invites_set_invite_new_user_pref_to_yes_details_validator = DomainInvitesSetInviteNewUserPrefToYesDetails_validator
EventDetails._domain_verification_add_domain_fail_details_validator = DomainVerificationAddDomainFailDetails_validator
EventDetails._domain_verification_add_domain_success_details_validator = DomainVerificationAddDomainSuccessDetails_validator
EventDetails._domain_verification_remove_domain_details_validator = DomainVerificationRemoveDomainDetails_validator
EventDetails._enabled_domain_invites_details_validator = EnabledDomainInvitesDetails_validator
EventDetails._apply_naming_convention_details_validator = ApplyNamingConventionDetails_validator
EventDetails._create_folder_details_validator = CreateFolderDetails_validator
EventDetails._file_add_details_validator = FileAddDetails_validator
EventDetails._file_copy_details_validator = FileCopyDetails_validator
EventDetails._file_delete_details_validator = FileDeleteDetails_validator
EventDetails._file_download_details_validator = FileDownloadDetails_validator
EventDetails._file_edit_details_validator = FileEditDetails_validator
EventDetails._file_get_copy_reference_details_validator = FileGetCopyReferenceDetails_validator
EventDetails._file_locking_lock_status_changed_details_validator = FileLockingLockStatusChangedDetails_validator
EventDetails._file_move_details_validator = FileMoveDetails_validator
EventDetails._file_permanently_delete_details_validator = FilePermanentlyDeleteDetails_validator
EventDetails._file_preview_details_validator = FilePreviewDetails_validator
EventDetails._file_rename_details_validator = FileRenameDetails_validator
EventDetails._file_restore_details_validator = FileRestoreDetails_validator
EventDetails._file_revert_details_validator = FileRevertDetails_validator
EventDetails._file_rollback_changes_details_validator = FileRollbackChangesDetails_validator
EventDetails._file_save_copy_reference_details_validator = FileSaveCopyReferenceDetails_validator
EventDetails._folder_overview_description_changed_details_validator = FolderOverviewDescriptionChangedDetails_validator
EventDetails._folder_overview_item_pinned_details_validator = FolderOverviewItemPinnedDetails_validator
EventDetails._folder_overview_item_unpinned_details_validator = FolderOverviewItemUnpinnedDetails_validator
EventDetails._object_label_added_details_validator = ObjectLabelAddedDetails_validator
EventDetails._object_label_removed_details_validator = ObjectLabelRemovedDetails_validator
EventDetails._object_label_updated_value_details_validator = ObjectLabelUpdatedValueDetails_validator
EventDetails._organize_folder_with_tidy_details_validator = OrganizeFolderWithTidyDetails_validator
EventDetails._rewind_folder_details_validator = RewindFolderDetails_validator
EventDetails._undo_naming_convention_details_validator = UndoNamingConventionDetails_validator
EventDetails._undo_organize_folder_with_tidy_details_validator = UndoOrganizeFolderWithTidyDetails_validator
EventDetails._user_tags_added_details_validator = UserTagsAddedDetails_validator
EventDetails._user_tags_removed_details_validator = UserTagsRemovedDetails_validator
EventDetails._email_ingest_receive_file_details_validator = EmailIngestReceiveFileDetails_validator
EventDetails._file_request_change_details_validator = FileRequestChangeDetails_validator
EventDetails._file_request_close_details_validator = FileRequestCloseDetails_validator
EventDetails._file_request_create_details_validator = FileRequestCreateDetails_validator
EventDetails._file_request_delete_details_validator = FileRequestDeleteDetails_validator
EventDetails._file_request_receive_file_details_validator = FileRequestReceiveFileDetails_validator
EventDetails._group_add_external_id_details_validator = GroupAddExternalIdDetails_validator
EventDetails._group_add_member_details_validator = GroupAddMemberDetails_validator
EventDetails._group_change_external_id_details_validator = GroupChangeExternalIdDetails_validator
EventDetails._group_change_management_type_details_validator = GroupChangeManagementTypeDetails_validator
EventDetails._group_change_member_role_details_validator = GroupChangeMemberRoleDetails_validator
EventDetails._group_create_details_validator = GroupCreateDetails_validator
EventDetails._group_delete_details_validator = GroupDeleteDetails_validator
EventDetails._group_description_updated_details_validator = GroupDescriptionUpdatedDetails_validator
EventDetails._group_join_policy_updated_details_validator = GroupJoinPolicyUpdatedDetails_validator
EventDetails._group_moved_details_validator = GroupMovedDetails_validator
EventDetails._group_remove_external_id_details_validator = GroupRemoveExternalIdDetails_validator
EventDetails._group_remove_member_details_validator = GroupRemoveMemberDetails_validator
EventDetails._group_rename_details_validator = GroupRenameDetails_validator
EventDetails._account_lock_or_unlocked_details_validator = AccountLockOrUnlockedDetails_validator
EventDetails._emm_error_details_validator = EmmErrorDetails_validator
EventDetails._guest_admin_signed_in_via_trusted_teams_details_validator = GuestAdminSignedInViaTrustedTeamsDetails_validator
EventDetails._guest_admin_signed_out_via_trusted_teams_details_validator = GuestAdminSignedOutViaTrustedTeamsDetails_validator
EventDetails._login_fail_details_validator = LoginFailDetails_validator
EventDetails._login_success_details_validator = LoginSuccessDetails_validator
EventDetails._logout_details_validator = LogoutDetails_validator
EventDetails._reseller_support_session_end_details_validator = ResellerSupportSessionEndDetails_validator
EventDetails._reseller_support_session_start_details_validator = ResellerSupportSessionStartDetails_validator
EventDetails._sign_in_as_session_end_details_validator = SignInAsSessionEndDetails_validator
EventDetails._sign_in_as_session_start_details_validator = SignInAsSessionStartDetails_validator
EventDetails._sso_error_details_validator = SsoErrorDetails_validator
EventDetails._create_team_invite_link_details_validator = CreateTeamInviteLinkDetails_validator
EventDetails._delete_team_invite_link_details_validator = DeleteTeamInviteLinkDetails_validator
EventDetails._member_add_external_id_details_validator = MemberAddExternalIdDetails_validator
EventDetails._member_add_name_details_validator = MemberAddNameDetails_validator
EventDetails._member_change_admin_role_details_validator = MemberChangeAdminRoleDetails_validator
EventDetails._member_change_email_details_validator = MemberChangeEmailDetails_validator
EventDetails._member_change_external_id_details_validator = MemberChangeExternalIdDetails_validator
EventDetails._member_change_membership_type_details_validator = MemberChangeMembershipTypeDetails_validator
EventDetails._member_change_name_details_validator = MemberChangeNameDetails_validator
EventDetails._member_change_reseller_role_details_validator = MemberChangeResellerRoleDetails_validator
EventDetails._member_change_status_details_validator = MemberChangeStatusDetails_validator
EventDetails._member_delete_manual_contacts_details_validator = MemberDeleteManualContactsDetails_validator
EventDetails._member_delete_profile_photo_details_validator = MemberDeleteProfilePhotoDetails_validator
EventDetails._member_permanently_delete_account_contents_details_validator = MemberPermanentlyDeleteAccountContentsDetails_validator
EventDetails._member_remove_external_id_details_validator = MemberRemoveExternalIdDetails_validator
EventDetails._member_set_profile_photo_details_validator = MemberSetProfilePhotoDetails_validator
EventDetails._member_space_limits_add_custom_quota_details_validator = MemberSpaceLimitsAddCustomQuotaDetails_validator
EventDetails._member_space_limits_change_custom_quota_details_validator = MemberSpaceLimitsChangeCustomQuotaDetails_validator
EventDetails._member_space_limits_change_status_details_validator = MemberSpaceLimitsChangeStatusDetails_validator
EventDetails._member_space_limits_remove_custom_quota_details_validator = MemberSpaceLimitsRemoveCustomQuotaDetails_validator
EventDetails._member_suggest_details_validator = MemberSuggestDetails_validator
EventDetails._member_transfer_account_contents_details_validator = MemberTransferAccountContentsDetails_validator
EventDetails._pending_secondary_email_added_details_validator = PendingSecondaryEmailAddedDetails_validator
EventDetails._secondary_email_deleted_details_validator = SecondaryEmailDeletedDetails_validator
EventDetails._secondary_email_verified_details_validator = SecondaryEmailVerifiedDetails_validator
EventDetails._secondary_mails_policy_changed_details_validator = SecondaryMailsPolicyChangedDetails_validator
EventDetails._binder_add_page_details_validator = BinderAddPageDetails_validator
EventDetails._binder_add_section_details_validator = BinderAddSectionDetails_validator
EventDetails._binder_remove_page_details_validator = BinderRemovePageDetails_validator
EventDetails._binder_remove_section_details_validator = BinderRemoveSectionDetails_validator
EventDetails._binder_rename_page_details_validator = BinderRenamePageDetails_validator
EventDetails._binder_rename_section_details_validator = BinderRenameSectionDetails_validator
EventDetails._binder_reorder_page_details_validator = BinderReorderPageDetails_validator
EventDetails._binder_reorder_section_details_validator = BinderReorderSectionDetails_validator
EventDetails._paper_content_add_member_details_validator = PaperContentAddMemberDetails_validator
EventDetails._paper_content_add_to_folder_details_validator = PaperContentAddToFolderDetails_validator
EventDetails._paper_content_archive_details_validator = PaperContentArchiveDetails_validator
EventDetails._paper_content_create_details_validator = PaperContentCreateDetails_validator
EventDetails._paper_content_permanently_delete_details_validator = PaperContentPermanentlyDeleteDetails_validator
EventDetails._paper_content_remove_from_folder_details_validator = PaperContentRemoveFromFolderDetails_validator
EventDetails._paper_content_remove_member_details_validator = PaperContentRemoveMemberDetails_validator
EventDetails._paper_content_rename_details_validator = PaperContentRenameDetails_validator
EventDetails._paper_content_restore_details_validator = PaperContentRestoreDetails_validator
EventDetails._paper_doc_add_comment_details_validator = PaperDocAddCommentDetails_validator
EventDetails._paper_doc_change_member_role_details_validator = PaperDocChangeMemberRoleDetails_validator
EventDetails._paper_doc_change_sharing_policy_details_validator = PaperDocChangeSharingPolicyDetails_validator
EventDetails._paper_doc_change_subscription_details_validator = PaperDocChangeSubscriptionDetails_validator
EventDetails._paper_doc_deleted_details_validator = PaperDocDeletedDetails_validator
EventDetails._paper_doc_delete_comment_details_validator = PaperDocDeleteCommentDetails_validator
EventDetails._paper_doc_download_details_validator = PaperDocDownloadDetails_validator
EventDetails._paper_doc_edit_details_validator = PaperDocEditDetails_validator
EventDetails._paper_doc_edit_comment_details_validator = PaperDocEditCommentDetails_validator
EventDetails._paper_doc_followed_details_validator = PaperDocFollowedDetails_validator
EventDetails._paper_doc_mention_details_validator = PaperDocMentionDetails_validator
EventDetails._paper_doc_ownership_changed_details_validator = PaperDocOwnershipChangedDetails_validator
EventDetails._paper_doc_request_access_details_validator = PaperDocRequestAccessDetails_validator
EventDetails._paper_doc_resolve_comment_details_validator = PaperDocResolveCommentDetails_validator
EventDetails._paper_doc_revert_details_validator = PaperDocRevertDetails_validator
EventDetails._paper_doc_slack_share_details_validator = PaperDocSlackShareDetails_validator
EventDetails._paper_doc_team_invite_details_validator = PaperDocTeamInviteDetails_validator
EventDetails._paper_doc_trashed_details_validator = PaperDocTrashedDetails_validator
EventDetails._paper_doc_unresolve_comment_details_validator = PaperDocUnresolveCommentDetails_validator
EventDetails._paper_doc_untrashed_details_validator = PaperDocUntrashedDetails_validator
EventDetails._paper_doc_view_details_validator = PaperDocViewDetails_validator
EventDetails._paper_external_view_allow_details_validator = PaperExternalViewAllowDetails_validator
EventDetails._paper_external_view_default_team_details_validator = PaperExternalViewDefaultTeamDetails_validator
EventDetails._paper_external_view_forbid_details_validator = PaperExternalViewForbidDetails_validator
EventDetails._paper_folder_change_subscription_details_validator = PaperFolderChangeSubscriptionDetails_validator
EventDetails._paper_folder_deleted_details_validator = PaperFolderDeletedDetails_validator
EventDetails._paper_folder_followed_details_validator = PaperFolderFollowedDetails_validator
EventDetails._paper_folder_team_invite_details_validator = PaperFolderTeamInviteDetails_validator
EventDetails._paper_published_link_change_permission_details_validator = PaperPublishedLinkChangePermissionDetails_validator
EventDetails._paper_published_link_create_details_validator = PaperPublishedLinkCreateDetails_validator
EventDetails._paper_published_link_disabled_details_validator = PaperPublishedLinkDisabledDetails_validator
EventDetails._paper_published_link_view_details_validator = PaperPublishedLinkViewDetails_validator
EventDetails._password_change_details_validator = PasswordChangeDetails_validator
EventDetails._password_reset_details_validator = PasswordResetDetails_validator
EventDetails._password_reset_all_details_validator = PasswordResetAllDetails_validator
EventDetails._classification_create_report_details_validator = ClassificationCreateReportDetails_validator
EventDetails._classification_create_report_fail_details_validator = ClassificationCreateReportFailDetails_validator
EventDetails._emm_create_exceptions_report_details_validator = EmmCreateExceptionsReportDetails_validator
EventDetails._emm_create_usage_report_details_validator = EmmCreateUsageReportDetails_validator
EventDetails._export_members_report_details_validator = ExportMembersReportDetails_validator
EventDetails._export_members_report_fail_details_validator = ExportMembersReportFailDetails_validator
EventDetails._external_sharing_create_report_details_validator = ExternalSharingCreateReportDetails_validator
EventDetails._external_sharing_report_failed_details_validator = ExternalSharingReportFailedDetails_validator
EventDetails._no_expiration_link_gen_create_report_details_validator = NoExpirationLinkGenCreateReportDetails_validator
EventDetails._no_expiration_link_gen_report_failed_details_validator = NoExpirationLinkGenReportFailedDetails_validator
EventDetails._no_password_link_gen_create_report_details_validator = NoPasswordLinkGenCreateReportDetails_validator
EventDetails._no_password_link_gen_report_failed_details_validator = NoPasswordLinkGenReportFailedDetails_validator
EventDetails._no_password_link_view_create_report_details_validator = NoPasswordLinkViewCreateReportDetails_validator
EventDetails._no_password_link_view_report_failed_details_validator = NoPasswordLinkViewReportFailedDetails_validator
EventDetails._outdated_link_view_create_report_details_validator = OutdatedLinkViewCreateReportDetails_validator
EventDetails._outdated_link_view_report_failed_details_validator = OutdatedLinkViewReportFailedDetails_validator
EventDetails._paper_admin_export_start_details_validator = PaperAdminExportStartDetails_validator
EventDetails._smart_sync_create_admin_privilege_report_details_validator = SmartSyncCreateAdminPrivilegeReportDetails_validator
EventDetails._team_activity_create_report_details_validator = TeamActivityCreateReportDetails_validator
EventDetails._team_activity_create_report_fail_details_validator = TeamActivityCreateReportFailDetails_validator
EventDetails._collection_share_details_validator = CollectionShareDetails_validator
EventDetails._file_transfers_file_add_details_validator = FileTransfersFileAddDetails_validator
EventDetails._file_transfers_transfer_delete_details_validator = FileTransfersTransferDeleteDetails_validator
EventDetails._file_transfers_transfer_download_details_validator = FileTransfersTransferDownloadDetails_validator
EventDetails._file_transfers_transfer_send_details_validator = FileTransfersTransferSendDetails_validator
EventDetails._file_transfers_transfer_view_details_validator = FileTransfersTransferViewDetails_validator
EventDetails._note_acl_invite_only_details_validator = NoteAclInviteOnlyDetails_validator
EventDetails._note_acl_link_details_validator = NoteAclLinkDetails_validator
EventDetails._note_acl_team_link_details_validator = NoteAclTeamLinkDetails_validator
EventDetails._note_shared_details_validator = NoteSharedDetails_validator
EventDetails._note_share_receive_details_validator = NoteShareReceiveDetails_validator
EventDetails._open_note_shared_details_validator = OpenNoteSharedDetails_validator
EventDetails._sf_add_group_details_validator = SfAddGroupDetails_validator
EventDetails._sf_allow_non_members_to_view_shared_links_details_validator = SfAllowNonMembersToViewSharedLinksDetails_validator
EventDetails._sf_external_invite_warn_details_validator = SfExternalInviteWarnDetails_validator
EventDetails._sf_fb_invite_details_validator = SfFbInviteDetails_validator
EventDetails._sf_fb_invite_change_role_details_validator = SfFbInviteChangeRoleDetails_validator
EventDetails._sf_fb_uninvite_details_validator = SfFbUninviteDetails_validator
EventDetails._sf_invite_group_details_validator = SfInviteGroupDetails_validator
EventDetails._sf_team_grant_access_details_validator = SfTeamGrantAccessDetails_validator
EventDetails._sf_team_invite_details_validator = SfTeamInviteDetails_validator
EventDetails._sf_team_invite_change_role_details_validator = SfTeamInviteChangeRoleDetails_validator
EventDetails._sf_team_join_details_validator = SfTeamJoinDetails_validator
EventDetails._sf_team_join_from_oob_link_details_validator = SfTeamJoinFromOobLinkDetails_validator
EventDetails._sf_team_uninvite_details_validator = SfTeamUninviteDetails_validator
EventDetails._shared_content_add_invitees_details_validator = SharedContentAddInviteesDetails_validator
EventDetails._shared_content_add_link_expiry_details_validator = SharedContentAddLinkExpiryDetails_validator
EventDetails._shared_content_add_link_password_details_validator = SharedContentAddLinkPasswordDetails_validator
EventDetails._shared_content_add_member_details_validator = SharedContentAddMemberDetails_validator
EventDetails._shared_content_change_downloads_policy_details_validator = SharedContentChangeDownloadsPolicyDetails_validator
EventDetails._shared_content_change_invitee_role_details_validator = SharedContentChangeInviteeRoleDetails_validator
EventDetails._shared_content_change_link_audience_details_validator = SharedContentChangeLinkAudienceDetails_validator
EventDetails._shared_content_change_link_expiry_details_validator = SharedContentChangeLinkExpiryDetails_validator
EventDetails._shared_content_change_link_password_details_validator = SharedContentChangeLinkPasswordDetails_validator
EventDetails._shared_content_change_member_role_details_validator = SharedContentChangeMemberRoleDetails_validator
EventDetails._shared_content_change_viewer_info_policy_details_validator = SharedContentChangeViewerInfoPolicyDetails_validator
EventDetails._shared_content_claim_invitation_details_validator = SharedContentClaimInvitationDetails_validator
EventDetails._shared_content_copy_details_validator = SharedContentCopyDetails_validator
EventDetails._shared_content_download_details_validator = SharedContentDownloadDetails_validator
EventDetails._shared_content_relinquish_membership_details_validator = SharedContentRelinquishMembershipDetails_validator
EventDetails._shared_content_remove_invitees_details_validator = SharedContentRemoveInviteesDetails_validator
EventDetails._shared_content_remove_link_expiry_details_validator = SharedContentRemoveLinkExpiryDetails_validator
EventDetails._shared_content_remove_link_password_details_validator = SharedContentRemoveLinkPasswordDetails_validator
EventDetails._shared_content_remove_member_details_validator = SharedContentRemoveMemberDetails_validator
EventDetails._shared_content_request_access_details_validator = SharedContentRequestAccessDetails_validator
EventDetails._shared_content_restore_invitees_details_validator = SharedContentRestoreInviteesDetails_validator
EventDetails._shared_content_restore_member_details_validator = SharedContentRestoreMemberDetails_validator
EventDetails._shared_content_unshare_details_validator = SharedContentUnshareDetails_validator
EventDetails._shared_content_view_details_validator = SharedContentViewDetails_validator
EventDetails._shared_folder_change_link_policy_details_validator = SharedFolderChangeLinkPolicyDetails_validator
EventDetails._shared_folder_change_members_inheritance_policy_details_validator = SharedFolderChangeMembersInheritancePolicyDetails_validator
EventDetails._shared_folder_change_members_management_policy_details_validator = SharedFolderChangeMembersManagementPolicyDetails_validator
EventDetails._shared_folder_change_members_policy_details_validator = SharedFolderChangeMembersPolicyDetails_validator
EventDetails._shared_folder_create_details_validator = SharedFolderCreateDetails_validator
EventDetails._shared_folder_decline_invitation_details_validator = SharedFolderDeclineInvitationDetails_validator
EventDetails._shared_folder_mount_details_validator = SharedFolderMountDetails_validator
EventDetails._shared_folder_nest_details_validator = SharedFolderNestDetails_validator
EventDetails._shared_folder_transfer_ownership_details_validator = SharedFolderTransferOwnershipDetails_validator
EventDetails._shared_folder_unmount_details_validator = SharedFolderUnmountDetails_validator
EventDetails._shared_link_add_expiry_details_validator = SharedLinkAddExpiryDetails_validator
EventDetails._shared_link_change_expiry_details_validator = SharedLinkChangeExpiryDetails_validator
EventDetails._shared_link_change_visibility_details_validator = SharedLinkChangeVisibilityDetails_validator
EventDetails._shared_link_copy_details_validator = SharedLinkCopyDetails_validator
EventDetails._shared_link_create_details_validator = SharedLinkCreateDetails_validator
EventDetails._shared_link_disable_details_validator = SharedLinkDisableDetails_validator
EventDetails._shared_link_download_details_validator = SharedLinkDownloadDetails_validator
EventDetails._shared_link_remove_expiry_details_validator = SharedLinkRemoveExpiryDetails_validator
EventDetails._shared_link_settings_add_expiration_details_validator = SharedLinkSettingsAddExpirationDetails_validator
EventDetails._shared_link_settings_add_password_details_validator = SharedLinkSettingsAddPasswordDetails_validator
EventDetails._shared_link_settings_allow_download_disabled_details_validator = SharedLinkSettingsAllowDownloadDisabledDetails_validator
EventDetails._shared_link_settings_allow_download_enabled_details_validator = SharedLinkSettingsAllowDownloadEnabledDetails_validator
EventDetails._shared_link_settings_change_audience_details_validator = SharedLinkSettingsChangeAudienceDetails_validator
EventDetails._shared_link_settings_change_expiration_details_validator = SharedLinkSettingsChangeExpirationDetails_validator
EventDetails._shared_link_settings_change_password_details_validator = SharedLinkSettingsChangePasswordDetails_validator
EventDetails._shared_link_settings_remove_expiration_details_validator = SharedLinkSettingsRemoveExpirationDetails_validator
EventDetails._shared_link_settings_remove_password_details_validator = SharedLinkSettingsRemovePasswordDetails_validator
EventDetails._shared_link_share_details_validator = SharedLinkShareDetails_validator
EventDetails._shared_link_view_details_validator = SharedLinkViewDetails_validator
EventDetails._shared_note_opened_details_validator = SharedNoteOpenedDetails_validator
EventDetails._shmodel_disable_downloads_details_validator = ShmodelDisableDownloadsDetails_validator
EventDetails._shmodel_enable_downloads_details_validator = ShmodelEnableDownloadsDetails_validator
EventDetails._shmodel_group_share_details_validator = ShmodelGroupShareDetails_validator
EventDetails._showcase_access_granted_details_validator = ShowcaseAccessGrantedDetails_validator
EventDetails._showcase_add_member_details_validator = ShowcaseAddMemberDetails_validator
EventDetails._showcase_archived_details_validator = ShowcaseArchivedDetails_validator
EventDetails._showcase_created_details_validator = ShowcaseCreatedDetails_validator
EventDetails._showcase_delete_comment_details_validator = ShowcaseDeleteCommentDetails_validator
EventDetails._showcase_edited_details_validator = ShowcaseEditedDetails_validator
EventDetails._showcase_edit_comment_details_validator = ShowcaseEditCommentDetails_validator
EventDetails._showcase_file_added_details_validator = ShowcaseFileAddedDetails_validator
EventDetails._showcase_file_download_details_validator = ShowcaseFileDownloadDetails_validator
EventDetails._showcase_file_removed_details_validator = ShowcaseFileRemovedDetails_validator
EventDetails._showcase_file_view_details_validator = ShowcaseFileViewDetails_validator
EventDetails._showcase_permanently_deleted_details_validator = ShowcasePermanentlyDeletedDetails_validator
EventDetails._showcase_post_comment_details_validator = ShowcasePostCommentDetails_validator
EventDetails._showcase_remove_member_details_validator = ShowcaseRemoveMemberDetails_validator
EventDetails._showcase_renamed_details_validator = ShowcaseRenamedDetails_validator
EventDetails._showcase_request_access_details_validator = ShowcaseRequestAccessDetails_validator
EventDetails._showcase_resolve_comment_details_validator = ShowcaseResolveCommentDetails_validator
EventDetails._showcase_restored_details_validator = ShowcaseRestoredDetails_validator
EventDetails._showcase_trashed_details_validator = ShowcaseTrashedDetails_validator
EventDetails._showcase_trashed_deprecated_details_validator = ShowcaseTrashedDeprecatedDetails_validator
EventDetails._showcase_unresolve_comment_details_validator = ShowcaseUnresolveCommentDetails_validator
EventDetails._showcase_untrashed_details_validator = ShowcaseUntrashedDetails_validator
EventDetails._showcase_untrashed_deprecated_details_validator = ShowcaseUntrashedDeprecatedDetails_validator
EventDetails._showcase_view_details_validator = ShowcaseViewDetails_validator
EventDetails._sso_add_cert_details_validator = SsoAddCertDetails_validator
EventDetails._sso_add_login_url_details_validator = SsoAddLoginUrlDetails_validator
EventDetails._sso_add_logout_url_details_validator = SsoAddLogoutUrlDetails_validator
EventDetails._sso_change_cert_details_validator = SsoChangeCertDetails_validator
EventDetails._sso_change_login_url_details_validator = SsoChangeLoginUrlDetails_validator
EventDetails._sso_change_logout_url_details_validator = SsoChangeLogoutUrlDetails_validator
EventDetails._sso_change_saml_identity_mode_details_validator = SsoChangeSamlIdentityModeDetails_validator
EventDetails._sso_remove_cert_details_validator = SsoRemoveCertDetails_validator
EventDetails._sso_remove_login_url_details_validator = SsoRemoveLoginUrlDetails_validator
EventDetails._sso_remove_logout_url_details_validator = SsoRemoveLogoutUrlDetails_validator
EventDetails._team_folder_change_status_details_validator = TeamFolderChangeStatusDetails_validator
EventDetails._team_folder_create_details_validator = TeamFolderCreateDetails_validator
EventDetails._team_folder_downgrade_details_validator = TeamFolderDowngradeDetails_validator
EventDetails._team_folder_permanently_delete_details_validator = TeamFolderPermanentlyDeleteDetails_validator
EventDetails._team_folder_rename_details_validator = TeamFolderRenameDetails_validator
EventDetails._team_selective_sync_settings_changed_details_validator = TeamSelectiveSyncSettingsChangedDetails_validator
EventDetails._account_capture_change_policy_details_validator = AccountCaptureChangePolicyDetails_validator
EventDetails._admin_email_reminders_changed_details_validator = AdminEmailRemindersChangedDetails_validator
EventDetails._allow_download_disabled_details_validator = AllowDownloadDisabledDetails_validator
EventDetails._allow_download_enabled_details_validator = AllowDownloadEnabledDetails_validator
EventDetails._app_permissions_changed_details_validator = AppPermissionsChangedDetails_validator
EventDetails._camera_uploads_policy_changed_details_validator = CameraUploadsPolicyChangedDetails_validator
EventDetails._capture_transcript_policy_changed_details_validator = CaptureTranscriptPolicyChangedDetails_validator
EventDetails._classification_change_policy_details_validator = ClassificationChangePolicyDetails_validator
EventDetails._computer_backup_policy_changed_details_validator = ComputerBackupPolicyChangedDetails_validator
EventDetails._content_administration_policy_changed_details_validator = ContentAdministrationPolicyChangedDetails_validator
EventDetails._data_placement_restriction_change_policy_details_validator = DataPlacementRestrictionChangePolicyDetails_validator
EventDetails._data_placement_restriction_satisfy_policy_details_validator = DataPlacementRestrictionSatisfyPolicyDetails_validator
EventDetails._device_approvals_add_exception_details_validator = DeviceApprovalsAddExceptionDetails_validator
EventDetails._device_approvals_change_desktop_policy_details_validator = DeviceApprovalsChangeDesktopPolicyDetails_validator
EventDetails._device_approvals_change_mobile_policy_details_validator = DeviceApprovalsChangeMobilePolicyDetails_validator
EventDetails._device_approvals_change_overage_action_details_validator = DeviceApprovalsChangeOverageActionDetails_validator
EventDetails._device_approvals_change_unlink_action_details_validator = DeviceApprovalsChangeUnlinkActionDetails_validator
EventDetails._device_approvals_remove_exception_details_validator = DeviceApprovalsRemoveExceptionDetails_validator
EventDetails._directory_restrictions_add_members_details_validator = DirectoryRestrictionsAddMembersDetails_validator
EventDetails._directory_restrictions_remove_members_details_validator = DirectoryRestrictionsRemoveMembersDetails_validator
EventDetails._dropbox_passwords_policy_changed_details_validator = DropboxPasswordsPolicyChangedDetails_validator
EventDetails._email_ingest_policy_changed_details_validator = EmailIngestPolicyChangedDetails_validator
EventDetails._emm_add_exception_details_validator = EmmAddExceptionDetails_validator
EventDetails._emm_change_policy_details_validator = EmmChangePolicyDetails_validator
EventDetails._emm_remove_exception_details_validator = EmmRemoveExceptionDetails_validator
EventDetails._extended_version_history_change_policy_details_validator = ExtendedVersionHistoryChangePolicyDetails_validator
EventDetails._external_drive_backup_policy_changed_details_validator = ExternalDriveBackupPolicyChangedDetails_validator
EventDetails._file_comments_change_policy_details_validator = FileCommentsChangePolicyDetails_validator
EventDetails._file_locking_policy_changed_details_validator = FileLockingPolicyChangedDetails_validator
EventDetails._file_provider_migration_policy_changed_details_validator = FileProviderMigrationPolicyChangedDetails_validator
EventDetails._file_requests_change_policy_details_validator = FileRequestsChangePolicyDetails_validator
EventDetails._file_requests_emails_enabled_details_validator = FileRequestsEmailsEnabledDetails_validator
EventDetails._file_requests_emails_restricted_to_team_only_details_validator = FileRequestsEmailsRestrictedToTeamOnlyDetails_validator
EventDetails._file_transfers_policy_changed_details_validator = FileTransfersPolicyChangedDetails_validator
EventDetails._folder_link_restriction_policy_changed_details_validator = FolderLinkRestrictionPolicyChangedDetails_validator
EventDetails._google_sso_change_policy_details_validator = GoogleSsoChangePolicyDetails_validator
EventDetails._group_user_management_change_policy_details_validator = GroupUserManagementChangePolicyDetails_validator
EventDetails._integration_policy_changed_details_validator = IntegrationPolicyChangedDetails_validator
EventDetails._invite_acceptance_email_policy_changed_details_validator = InviteAcceptanceEmailPolicyChangedDetails_validator
EventDetails._member_requests_change_policy_details_validator = MemberRequestsChangePolicyDetails_validator
EventDetails._member_send_invite_policy_changed_details_validator = MemberSendInvitePolicyChangedDetails_validator
EventDetails._member_space_limits_add_exception_details_validator = MemberSpaceLimitsAddExceptionDetails_validator
EventDetails._member_space_limits_change_caps_type_policy_details_validator = MemberSpaceLimitsChangeCapsTypePolicyDetails_validator
EventDetails._member_space_limits_change_policy_details_validator = MemberSpaceLimitsChangePolicyDetails_validator
EventDetails._member_space_limits_remove_exception_details_validator = MemberSpaceLimitsRemoveExceptionDetails_validator
EventDetails._member_suggestions_change_policy_details_validator = MemberSuggestionsChangePolicyDetails_validator
EventDetails._microsoft_office_addin_change_policy_details_validator = MicrosoftOfficeAddinChangePolicyDetails_validator
EventDetails._network_control_change_policy_details_validator = NetworkControlChangePolicyDetails_validator
EventDetails._paper_change_deployment_policy_details_validator = PaperChangeDeploymentPolicyDetails_validator
EventDetails._paper_change_member_link_policy_details_validator = PaperChangeMemberLinkPolicyDetails_validator
EventDetails._paper_change_member_policy_details_validator = PaperChangeMemberPolicyDetails_validator
EventDetails._paper_change_policy_details_validator = PaperChangePolicyDetails_validator
EventDetails._paper_default_folder_policy_changed_details_validator = PaperDefaultFolderPolicyChangedDetails_validator
EventDetails._paper_desktop_policy_changed_details_validator = PaperDesktopPolicyChangedDetails_validator
EventDetails._paper_enabled_users_group_addition_details_validator = PaperEnabledUsersGroupAdditionDetails_validator
EventDetails._paper_enabled_users_group_removal_details_validator = PaperEnabledUsersGroupRemovalDetails_validator
EventDetails._password_strength_requirements_change_policy_details_validator = PasswordStrengthRequirementsChangePolicyDetails_validator
EventDetails._permanent_delete_change_policy_details_validator = PermanentDeleteChangePolicyDetails_validator
EventDetails._reseller_support_change_policy_details_validator = ResellerSupportChangePolicyDetails_validator
EventDetails._rewind_policy_changed_details_validator = RewindPolicyChangedDetails_validator
EventDetails._send_for_signature_policy_changed_details_validator = SendForSignaturePolicyChangedDetails_validator
EventDetails._sharing_change_folder_join_policy_details_validator = SharingChangeFolderJoinPolicyDetails_validator
EventDetails._sharing_change_link_allow_change_expiration_policy_details_validator = SharingChangeLinkAllowChangeExpirationPolicyDetails_validator
EventDetails._sharing_change_link_default_expiration_policy_details_validator = SharingChangeLinkDefaultExpirationPolicyDetails_validator
EventDetails._sharing_change_link_enforce_password_policy_details_validator = SharingChangeLinkEnforcePasswordPolicyDetails_validator
EventDetails._sharing_change_link_policy_details_validator = SharingChangeLinkPolicyDetails_validator
EventDetails._sharing_change_member_policy_details_validator = SharingChangeMemberPolicyDetails_validator
EventDetails._showcase_change_download_policy_details_validator = ShowcaseChangeDownloadPolicyDetails_validator
EventDetails._showcase_change_enabled_policy_details_validator = ShowcaseChangeEnabledPolicyDetails_validator
EventDetails._showcase_change_external_sharing_policy_details_validator = ShowcaseChangeExternalSharingPolicyDetails_validator
EventDetails._smarter_smart_sync_policy_changed_details_validator = SmarterSmartSyncPolicyChangedDetails_validator
EventDetails._smart_sync_change_policy_details_validator = SmartSyncChangePolicyDetails_validator
EventDetails._smart_sync_not_opt_out_details_validator = SmartSyncNotOptOutDetails_validator
EventDetails._smart_sync_opt_out_details_validator = SmartSyncOptOutDetails_validator
EventDetails._sso_change_policy_details_validator = SsoChangePolicyDetails_validator
EventDetails._team_branding_policy_changed_details_validator = TeamBrandingPolicyChangedDetails_validator
EventDetails._team_extensions_policy_changed_details_validator = TeamExtensionsPolicyChangedDetails_validator
EventDetails._team_selective_sync_policy_changed_details_validator = TeamSelectiveSyncPolicyChangedDetails_validator
EventDetails._team_sharing_whitelist_subjects_changed_details_validator = TeamSharingWhitelistSubjectsChangedDetails_validator
EventDetails._tfa_add_exception_details_validator = TfaAddExceptionDetails_validator
EventDetails._tfa_change_policy_details_validator = TfaChangePolicyDetails_validator
EventDetails._tfa_remove_exception_details_validator = TfaRemoveExceptionDetails_validator
EventDetails._two_account_change_policy_details_validator = TwoAccountChangePolicyDetails_validator
EventDetails._viewer_info_policy_changed_details_validator = ViewerInfoPolicyChangedDetails_validator
EventDetails._watermarking_policy_changed_details_validator = WatermarkingPolicyChangedDetails_validator
EventDetails._web_sessions_change_active_session_limit_details_validator = WebSessionsChangeActiveSessionLimitDetails_validator
EventDetails._web_sessions_change_fixed_length_policy_details_validator = WebSessionsChangeFixedLengthPolicyDetails_validator
EventDetails._web_sessions_change_idle_length_policy_details_validator = WebSessionsChangeIdleLengthPolicyDetails_validator
EventDetails._data_residency_migration_request_successful_details_validator = DataResidencyMigrationRequestSuccessfulDetails_validator
EventDetails._data_residency_migration_request_unsuccessful_details_validator = DataResidencyMigrationRequestUnsuccessfulDetails_validator
EventDetails._team_merge_from_details_validator = TeamMergeFromDetails_validator
EventDetails._team_merge_to_details_validator = TeamMergeToDetails_validator
EventDetails._team_profile_add_background_details_validator = TeamProfileAddBackgroundDetails_validator
EventDetails._team_profile_add_logo_details_validator = TeamProfileAddLogoDetails_validator
EventDetails._team_profile_change_background_details_validator = TeamProfileChangeBackgroundDetails_validator
EventDetails._team_profile_change_default_language_details_validator = TeamProfileChangeDefaultLanguageDetails_validator
EventDetails._team_profile_change_logo_details_validator = TeamProfileChangeLogoDetails_validator
EventDetails._team_profile_change_name_details_validator = TeamProfileChangeNameDetails_validator
EventDetails._team_profile_remove_background_details_validator = TeamProfileRemoveBackgroundDetails_validator
EventDetails._team_profile_remove_logo_details_validator = TeamProfileRemoveLogoDetails_validator
EventDetails._tfa_add_backup_phone_details_validator = TfaAddBackupPhoneDetails_validator
EventDetails._tfa_add_security_key_details_validator = TfaAddSecurityKeyDetails_validator
EventDetails._tfa_change_backup_phone_details_validator = TfaChangeBackupPhoneDetails_validator
EventDetails._tfa_change_status_details_validator = TfaChangeStatusDetails_validator
EventDetails._tfa_remove_backup_phone_details_validator = TfaRemoveBackupPhoneDetails_validator
EventDetails._tfa_remove_security_key_details_validator = TfaRemoveSecurityKeyDetails_validator
EventDetails._tfa_reset_details_validator = TfaResetDetails_validator
EventDetails._changed_enterprise_admin_role_details_validator = ChangedEnterpriseAdminRoleDetails_validator
EventDetails._changed_enterprise_connected_team_status_details_validator = ChangedEnterpriseConnectedTeamStatusDetails_validator
EventDetails._ended_enterprise_admin_session_details_validator = EndedEnterpriseAdminSessionDetails_validator
EventDetails._ended_enterprise_admin_session_deprecated_details_validator = EndedEnterpriseAdminSessionDeprecatedDetails_validator
EventDetails._enterprise_settings_locking_details_validator = EnterpriseSettingsLockingDetails_validator
EventDetails._guest_admin_change_status_details_validator = GuestAdminChangeStatusDetails_validator
EventDetails._started_enterprise_admin_session_details_validator = StartedEnterpriseAdminSessionDetails_validator
EventDetails._team_merge_request_accepted_details_validator = TeamMergeRequestAcceptedDetails_validator
EventDetails._team_merge_request_accepted_shown_to_primary_team_details_validator = TeamMergeRequestAcceptedShownToPrimaryTeamDetails_validator
EventDetails._team_merge_request_accepted_shown_to_secondary_team_details_validator = TeamMergeRequestAcceptedShownToSecondaryTeamDetails_validator
EventDetails._team_merge_request_auto_canceled_details_validator = TeamMergeRequestAutoCanceledDetails_validator
EventDetails._team_merge_request_canceled_details_validator = TeamMergeRequestCanceledDetails_validator
EventDetails._team_merge_request_canceled_shown_to_primary_team_details_validator = TeamMergeRequestCanceledShownToPrimaryTeamDetails_validator
EventDetails._team_merge_request_canceled_shown_to_secondary_team_details_validator = TeamMergeRequestCanceledShownToSecondaryTeamDetails_validator
EventDetails._team_merge_request_expired_details_validator = TeamMergeRequestExpiredDetails_validator
EventDetails._team_merge_request_expired_shown_to_primary_team_details_validator = TeamMergeRequestExpiredShownToPrimaryTeamDetails_validator
EventDetails._team_merge_request_expired_shown_to_secondary_team_details_validator = TeamMergeRequestExpiredShownToSecondaryTeamDetails_validator
EventDetails._team_merge_request_rejected_shown_to_primary_team_details_validator = TeamMergeRequestRejectedShownToPrimaryTeamDetails_validator
EventDetails._team_merge_request_rejected_shown_to_secondary_team_details_validator = TeamMergeRequestRejectedShownToSecondaryTeamDetails_validator
EventDetails._team_merge_request_reminder_details_validator = TeamMergeRequestReminderDetails_validator
EventDetails._team_merge_request_reminder_shown_to_primary_team_details_validator = TeamMergeRequestReminderShownToPrimaryTeamDetails_validator
EventDetails._team_merge_request_reminder_shown_to_secondary_team_details_validator = TeamMergeRequestReminderShownToSecondaryTeamDetails_validator
EventDetails._team_merge_request_revoked_details_validator = TeamMergeRequestRevokedDetails_validator
EventDetails._team_merge_request_sent_shown_to_primary_team_details_validator = TeamMergeRequestSentShownToPrimaryTeamDetails_validator
EventDetails._team_merge_request_sent_shown_to_secondary_team_details_validator = TeamMergeRequestSentShownToSecondaryTeamDetails_validator
EventDetails._missing_details_validator = MissingDetails_validator
EventDetails._other_validator = bv.Void()
EventDetails._tagmap = {
    'admin_alerting_alert_state_changed_details': EventDetails._admin_alerting_alert_state_changed_details_validator,
    'admin_alerting_changed_alert_config_details': EventDetails._admin_alerting_changed_alert_config_details_validator,
    'admin_alerting_triggered_alert_details': EventDetails._admin_alerting_triggered_alert_details_validator,
    'app_blocked_by_permissions_details': EventDetails._app_blocked_by_permissions_details_validator,
    'app_link_team_details': EventDetails._app_link_team_details_validator,
    'app_link_user_details': EventDetails._app_link_user_details_validator,
    'app_unlink_team_details': EventDetails._app_unlink_team_details_validator,
    'app_unlink_user_details': EventDetails._app_unlink_user_details_validator,
    'integration_connected_details': EventDetails._integration_connected_details_validator,
    'integration_disconnected_details': EventDetails._integration_disconnected_details_validator,
    'file_add_comment_details': EventDetails._file_add_comment_details_validator,
    'file_change_comment_subscription_details': EventDetails._file_change_comment_subscription_details_validator,
    'file_delete_comment_details': EventDetails._file_delete_comment_details_validator,
    'file_edit_comment_details': EventDetails._file_edit_comment_details_validator,
    'file_like_comment_details': EventDetails._file_like_comment_details_validator,
    'file_resolve_comment_details': EventDetails._file_resolve_comment_details_validator,
    'file_unlike_comment_details': EventDetails._file_unlike_comment_details_validator,
    'file_unresolve_comment_details': EventDetails._file_unresolve_comment_details_validator,
    'governance_policy_add_folders_details': EventDetails._governance_policy_add_folders_details_validator,
    'governance_policy_add_folder_failed_details': EventDetails._governance_policy_add_folder_failed_details_validator,
    'governance_policy_content_disposed_details': EventDetails._governance_policy_content_disposed_details_validator,
    'governance_policy_create_details': EventDetails._governance_policy_create_details_validator,
    'governance_policy_delete_details': EventDetails._governance_policy_delete_details_validator,
    'governance_policy_edit_details_details': EventDetails._governance_policy_edit_details_details_validator,
    'governance_policy_edit_duration_details': EventDetails._governance_policy_edit_duration_details_validator,
    'governance_policy_export_created_details': EventDetails._governance_policy_export_created_details_validator,
    'governance_policy_export_removed_details': EventDetails._governance_policy_export_removed_details_validator,
    'governance_policy_remove_folders_details': EventDetails._governance_policy_remove_folders_details_validator,
    'governance_policy_report_created_details': EventDetails._governance_policy_report_created_details_validator,
    'governance_policy_zip_part_downloaded_details': EventDetails._governance_policy_zip_part_downloaded_details_validator,
    'legal_holds_activate_a_hold_details': EventDetails._legal_holds_activate_a_hold_details_validator,
    'legal_holds_add_members_details': EventDetails._legal_holds_add_members_details_validator,
    'legal_holds_change_hold_details_details': EventDetails._legal_holds_change_hold_details_details_validator,
    'legal_holds_change_hold_name_details': EventDetails._legal_holds_change_hold_name_details_validator,
    'legal_holds_export_a_hold_details': EventDetails._legal_holds_export_a_hold_details_validator,
    'legal_holds_export_cancelled_details': EventDetails._legal_holds_export_cancelled_details_validator,
    'legal_holds_export_downloaded_details': EventDetails._legal_holds_export_downloaded_details_validator,
    'legal_holds_export_removed_details': EventDetails._legal_holds_export_removed_details_validator,
    'legal_holds_release_a_hold_details': EventDetails._legal_holds_release_a_hold_details_validator,
    'legal_holds_remove_members_details': EventDetails._legal_holds_remove_members_details_validator,
    'legal_holds_report_a_hold_details': EventDetails._legal_holds_report_a_hold_details_validator,
    'device_change_ip_desktop_details': EventDetails._device_change_ip_desktop_details_validator,
    'device_change_ip_mobile_details': EventDetails._device_change_ip_mobile_details_validator,
    'device_change_ip_web_details': EventDetails._device_change_ip_web_details_validator,
    'device_delete_on_unlink_fail_details': EventDetails._device_delete_on_unlink_fail_details_validator,
    'device_delete_on_unlink_success_details': EventDetails._device_delete_on_unlink_success_details_validator,
    'device_link_fail_details': EventDetails._device_link_fail_details_validator,
    'device_link_success_details': EventDetails._device_link_success_details_validator,
    'device_management_disabled_details': EventDetails._device_management_disabled_details_validator,
    'device_management_enabled_details': EventDetails._device_management_enabled_details_validator,
    'device_sync_backup_status_changed_details': EventDetails._device_sync_backup_status_changed_details_validator,
    'device_unlink_details': EventDetails._device_unlink_details_validator,
    'dropbox_passwords_exported_details': EventDetails._dropbox_passwords_exported_details_validator,
    'dropbox_passwords_new_device_enrolled_details': EventDetails._dropbox_passwords_new_device_enrolled_details_validator,
    'emm_refresh_auth_token_details': EventDetails._emm_refresh_auth_token_details_validator,
    'external_drive_backup_eligibility_status_checked_details': EventDetails._external_drive_backup_eligibility_status_checked_details_validator,
    'external_drive_backup_status_changed_details': EventDetails._external_drive_backup_status_changed_details_validator,
    'account_capture_change_availability_details': EventDetails._account_capture_change_availability_details_validator,
    'account_capture_migrate_account_details': EventDetails._account_capture_migrate_account_details_validator,
    'account_capture_notification_emails_sent_details': EventDetails._account_capture_notification_emails_sent_details_validator,
    'account_capture_relinquish_account_details': EventDetails._account_capture_relinquish_account_details_validator,
    'disabled_domain_invites_details': EventDetails._disabled_domain_invites_details_validator,
    'domain_invites_approve_request_to_join_team_details': EventDetails._domain_invites_approve_request_to_join_team_details_validator,
    'domain_invites_decline_request_to_join_team_details': EventDetails._domain_invites_decline_request_to_join_team_details_validator,
    'domain_invites_email_existing_users_details': EventDetails._domain_invites_email_existing_users_details_validator,
    'domain_invites_request_to_join_team_details': EventDetails._domain_invites_request_to_join_team_details_validator,
    'domain_invites_set_invite_new_user_pref_to_no_details': EventDetails._domain_invites_set_invite_new_user_pref_to_no_details_validator,
    'domain_invites_set_invite_new_user_pref_to_yes_details': EventDetails._domain_invites_set_invite_new_user_pref_to_yes_details_validator,
    'domain_verification_add_domain_fail_details': EventDetails._domain_verification_add_domain_fail_details_validator,
    'domain_verification_add_domain_success_details': EventDetails._domain_verification_add_domain_success_details_validator,
    'domain_verification_remove_domain_details': EventDetails._domain_verification_remove_domain_details_validator,
    'enabled_domain_invites_details': EventDetails._enabled_domain_invites_details_validator,
    'apply_naming_convention_details': EventDetails._apply_naming_convention_details_validator,
    'create_folder_details': EventDetails._create_folder_details_validator,
    'file_add_details': EventDetails._file_add_details_validator,
    'file_copy_details': EventDetails._file_copy_details_validator,
    'file_delete_details': EventDetails._file_delete_details_validator,
    'file_download_details': EventDetails._file_download_details_validator,
    'file_edit_details': EventDetails._file_edit_details_validator,
    'file_get_copy_reference_details': EventDetails._file_get_copy_reference_details_validator,
    'file_locking_lock_status_changed_details': EventDetails._file_locking_lock_status_changed_details_validator,
    'file_move_details': EventDetails._file_move_details_validator,
    'file_permanently_delete_details': EventDetails._file_permanently_delete_details_validator,
    'file_preview_details': EventDetails._file_preview_details_validator,
    'file_rename_details': EventDetails._file_rename_details_validator,
    'file_restore_details': EventDetails._file_restore_details_validator,
    'file_revert_details': EventDetails._file_revert_details_validator,
    'file_rollback_changes_details': EventDetails._file_rollback_changes_details_validator,
    'file_save_copy_reference_details': EventDetails._file_save_copy_reference_details_validator,
    'folder_overview_description_changed_details': EventDetails._folder_overview_description_changed_details_validator,
    'folder_overview_item_pinned_details': EventDetails._folder_overview_item_pinned_details_validator,
    'folder_overview_item_unpinned_details': EventDetails._folder_overview_item_unpinned_details_validator,
    'object_label_added_details': EventDetails._object_label_added_details_validator,
    'object_label_removed_details': EventDetails._object_label_removed_details_validator,
    'object_label_updated_value_details': EventDetails._object_label_updated_value_details_validator,
    'organize_folder_with_tidy_details': EventDetails._organize_folder_with_tidy_details_validator,
    'rewind_folder_details': EventDetails._rewind_folder_details_validator,
    'undo_naming_convention_details': EventDetails._undo_naming_convention_details_validator,
    'undo_organize_folder_with_tidy_details': EventDetails._undo_organize_folder_with_tidy_details_validator,
    'user_tags_added_details': EventDetails._user_tags_added_details_validator,
    'user_tags_removed_details': EventDetails._user_tags_removed_details_validator,
    'email_ingest_receive_file_details': EventDetails._email_ingest_receive_file_details_validator,
    'file_request_change_details': EventDetails._file_request_change_details_validator,
    'file_request_close_details': EventDetails._file_request_close_details_validator,
    'file_request_create_details': EventDetails._file_request_create_details_validator,
    'file_request_delete_details': EventDetails._file_request_delete_details_validator,
    'file_request_receive_file_details': EventDetails._file_request_receive_file_details_validator,
    'group_add_external_id_details': EventDetails._group_add_external_id_details_validator,
    'group_add_member_details': EventDetails._group_add_member_details_validator,
    'group_change_external_id_details': EventDetails._group_change_external_id_details_validator,
    'group_change_management_type_details': EventDetails._group_change_management_type_details_validator,
    'group_change_member_role_details': EventDetails._group_change_member_role_details_validator,
    'group_create_details': EventDetails._group_create_details_validator,
    'group_delete_details': EventDetails._group_delete_details_validator,
    'group_description_updated_details': EventDetails._group_description_updated_details_validator,
    'group_join_policy_updated_details': EventDetails._group_join_policy_updated_details_validator,
    'group_moved_details': EventDetails._group_moved_details_validator,
    'group_remove_external_id_details': EventDetails._group_remove_external_id_details_validator,
    'group_remove_member_details': EventDetails._group_remove_member_details_validator,
    'group_rename_details': EventDetails._group_rename_details_validator,
    'account_lock_or_unlocked_details': EventDetails._account_lock_or_unlocked_details_validator,
    'emm_error_details': EventDetails._emm_error_details_validator,
    'guest_admin_signed_in_via_trusted_teams_details': EventDetails._guest_admin_signed_in_via_trusted_teams_details_validator,
    'guest_admin_signed_out_via_trusted_teams_details': EventDetails._guest_admin_signed_out_via_trusted_teams_details_validator,
    'login_fail_details': EventDetails._login_fail_details_validator,
    'login_success_details': EventDetails._login_success_details_validator,
    'logout_details': EventDetails._logout_details_validator,
    'reseller_support_session_end_details': EventDetails._reseller_support_session_end_details_validator,
    'reseller_support_session_start_details': EventDetails._reseller_support_session_start_details_validator,
    'sign_in_as_session_end_details': EventDetails._sign_in_as_session_end_details_validator,
    'sign_in_as_session_start_details': EventDetails._sign_in_as_session_start_details_validator,
    'sso_error_details': EventDetails._sso_error_details_validator,
    'create_team_invite_link_details': EventDetails._create_team_invite_link_details_validator,
    'delete_team_invite_link_details': EventDetails._delete_team_invite_link_details_validator,
    'member_add_external_id_details': EventDetails._member_add_external_id_details_validator,
    'member_add_name_details': EventDetails._member_add_name_details_validator,
    'member_change_admin_role_details': EventDetails._member_change_admin_role_details_validator,
    'member_change_email_details': EventDetails._member_change_email_details_validator,
    'member_change_external_id_details': EventDetails._member_change_external_id_details_validator,
    'member_change_membership_type_details': EventDetails._member_change_membership_type_details_validator,
    'member_change_name_details': EventDetails._member_change_name_details_validator,
    'member_change_reseller_role_details': EventDetails._member_change_reseller_role_details_validator,
    'member_change_status_details': EventDetails._member_change_status_details_validator,
    'member_delete_manual_contacts_details': EventDetails._member_delete_manual_contacts_details_validator,
    'member_delete_profile_photo_details': EventDetails._member_delete_profile_photo_details_validator,
    'member_permanently_delete_account_contents_details': EventDetails._member_permanently_delete_account_contents_details_validator,
    'member_remove_external_id_details': EventDetails._member_remove_external_id_details_validator,
    'member_set_profile_photo_details': EventDetails._member_set_profile_photo_details_validator,
    'member_space_limits_add_custom_quota_details': EventDetails._member_space_limits_add_custom_quota_details_validator,
    'member_space_limits_change_custom_quota_details': EventDetails._member_space_limits_change_custom_quota_details_validator,
    'member_space_limits_change_status_details': EventDetails._member_space_limits_change_status_details_validator,
    'member_space_limits_remove_custom_quota_details': EventDetails._member_space_limits_remove_custom_quota_details_validator,
    'member_suggest_details': EventDetails._member_suggest_details_validator,
    'member_transfer_account_contents_details': EventDetails._member_transfer_account_contents_details_validator,
    'pending_secondary_email_added_details': EventDetails._pending_secondary_email_added_details_validator,
    'secondary_email_deleted_details': EventDetails._secondary_email_deleted_details_validator,
    'secondary_email_verified_details': EventDetails._secondary_email_verified_details_validator,
    'secondary_mails_policy_changed_details': EventDetails._secondary_mails_policy_changed_details_validator,
    'binder_add_page_details': EventDetails._binder_add_page_details_validator,
    'binder_add_section_details': EventDetails._binder_add_section_details_validator,
    'binder_remove_page_details': EventDetails._binder_remove_page_details_validator,
    'binder_remove_section_details': EventDetails._binder_remove_section_details_validator,
    'binder_rename_page_details': EventDetails._binder_rename_page_details_validator,
    'binder_rename_section_details': EventDetails._binder_rename_section_details_validator,
    'binder_reorder_page_details': EventDetails._binder_reorder_page_details_validator,
    'binder_reorder_section_details': EventDetails._binder_reorder_section_details_validator,
    'paper_content_add_member_details': EventDetails._paper_content_add_member_details_validator,
    'paper_content_add_to_folder_details': EventDetails._paper_content_add_to_folder_details_validator,
    'paper_content_archive_details': EventDetails._paper_content_archive_details_validator,
    'paper_content_create_details': EventDetails._paper_content_create_details_validator,
    'paper_content_permanently_delete_details': EventDetails._paper_content_permanently_delete_details_validator,
    'paper_content_remove_from_folder_details': EventDetails._paper_content_remove_from_folder_details_validator,
    'paper_content_remove_member_details': EventDetails._paper_content_remove_member_details_validator,
    'paper_content_rename_details': EventDetails._paper_content_rename_details_validator,
    'paper_content_restore_details': EventDetails._paper_content_restore_details_validator,
    'paper_doc_add_comment_details': EventDetails._paper_doc_add_comment_details_validator,
    'paper_doc_change_member_role_details': EventDetails._paper_doc_change_member_role_details_validator,
    'paper_doc_change_sharing_policy_details': EventDetails._paper_doc_change_sharing_policy_details_validator,
    'paper_doc_change_subscription_details': EventDetails._paper_doc_change_subscription_details_validator,
    'paper_doc_deleted_details': EventDetails._paper_doc_deleted_details_validator,
    'paper_doc_delete_comment_details': EventDetails._paper_doc_delete_comment_details_validator,
    'paper_doc_download_details': EventDetails._paper_doc_download_details_validator,
    'paper_doc_edit_details': EventDetails._paper_doc_edit_details_validator,
    'paper_doc_edit_comment_details': EventDetails._paper_doc_edit_comment_details_validator,
    'paper_doc_followed_details': EventDetails._paper_doc_followed_details_validator,
    'paper_doc_mention_details': EventDetails._paper_doc_mention_details_validator,
    'paper_doc_ownership_changed_details': EventDetails._paper_doc_ownership_changed_details_validator,
    'paper_doc_request_access_details': EventDetails._paper_doc_request_access_details_validator,
    'paper_doc_resolve_comment_details': EventDetails._paper_doc_resolve_comment_details_validator,
    'paper_doc_revert_details': EventDetails._paper_doc_revert_details_validator,
    'paper_doc_slack_share_details': EventDetails._paper_doc_slack_share_details_validator,
    'paper_doc_team_invite_details': EventDetails._paper_doc_team_invite_details_validator,
    'paper_doc_trashed_details': EventDetails._paper_doc_trashed_details_validator,
    'paper_doc_unresolve_comment_details': EventDetails._paper_doc_unresolve_comment_details_validator,
    'paper_doc_untrashed_details': EventDetails._paper_doc_untrashed_details_validator,
    'paper_doc_view_details': EventDetails._paper_doc_view_details_validator,
    'paper_external_view_allow_details': EventDetails._paper_external_view_allow_details_validator,
    'paper_external_view_default_team_details': EventDetails._paper_external_view_default_team_details_validator,
    'paper_external_view_forbid_details': EventDetails._paper_external_view_forbid_details_validator,
    'paper_folder_change_subscription_details': EventDetails._paper_folder_change_subscription_details_validator,
    'paper_folder_deleted_details': EventDetails._paper_folder_deleted_details_validator,
    'paper_folder_followed_details': EventDetails._paper_folder_followed_details_validator,
    'paper_folder_team_invite_details': EventDetails._paper_folder_team_invite_details_validator,
    'paper_published_link_change_permission_details': EventDetails._paper_published_link_change_permission_details_validator,
    'paper_published_link_create_details': EventDetails._paper_published_link_create_details_validator,
    'paper_published_link_disabled_details': EventDetails._paper_published_link_disabled_details_validator,
    'paper_published_link_view_details': EventDetails._paper_published_link_view_details_validator,
    'password_change_details': EventDetails._password_change_details_validator,
    'password_reset_details': EventDetails._password_reset_details_validator,
    'password_reset_all_details': EventDetails._password_reset_all_details_validator,
    'classification_create_report_details': EventDetails._classification_create_report_details_validator,
    'classification_create_report_fail_details': EventDetails._classification_create_report_fail_details_validator,
    'emm_create_exceptions_report_details': EventDetails._emm_create_exceptions_report_details_validator,
    'emm_create_usage_report_details': EventDetails._emm_create_usage_report_details_validator,
    'export_members_report_details': EventDetails._export_members_report_details_validator,
    'export_members_report_fail_details': EventDetails._export_members_report_fail_details_validator,
    'external_sharing_create_report_details': EventDetails._external_sharing_create_report_details_validator,
    'external_sharing_report_failed_details': EventDetails._external_sharing_report_failed_details_validator,
    'no_expiration_link_gen_create_report_details': EventDetails._no_expiration_link_gen_create_report_details_validator,
    'no_expiration_link_gen_report_failed_details': EventDetails._no_expiration_link_gen_report_failed_details_validator,
    'no_password_link_gen_create_report_details': EventDetails._no_password_link_gen_create_report_details_validator,
    'no_password_link_gen_report_failed_details': EventDetails._no_password_link_gen_report_failed_details_validator,
    'no_password_link_view_create_report_details': EventDetails._no_password_link_view_create_report_details_validator,
    'no_password_link_view_report_failed_details': EventDetails._no_password_link_view_report_failed_details_validator,
    'outdated_link_view_create_report_details': EventDetails._outdated_link_view_create_report_details_validator,
    'outdated_link_view_report_failed_details': EventDetails._outdated_link_view_report_failed_details_validator,
    'paper_admin_export_start_details': EventDetails._paper_admin_export_start_details_validator,
    'smart_sync_create_admin_privilege_report_details': EventDetails._smart_sync_create_admin_privilege_report_details_validator,
    'team_activity_create_report_details': EventDetails._team_activity_create_report_details_validator,
    'team_activity_create_report_fail_details': EventDetails._team_activity_create_report_fail_details_validator,
    'collection_share_details': EventDetails._collection_share_details_validator,
    'file_transfers_file_add_details': EventDetails._file_transfers_file_add_details_validator,
    'file_transfers_transfer_delete_details': EventDetails._file_transfers_transfer_delete_details_validator,
    'file_transfers_transfer_download_details': EventDetails._file_transfers_transfer_download_details_validator,
    'file_transfers_transfer_send_details': EventDetails._file_transfers_transfer_send_details_validator,
    'file_transfers_transfer_view_details': EventDetails._file_transfers_transfer_view_details_validator,
    'note_acl_invite_only_details': EventDetails._note_acl_invite_only_details_validator,
    'note_acl_link_details': EventDetails._note_acl_link_details_validator,
    'note_acl_team_link_details': EventDetails._note_acl_team_link_details_validator,
    'note_shared_details': EventDetails._note_shared_details_validator,
    'note_share_receive_details': EventDetails._note_share_receive_details_validator,
    'open_note_shared_details': EventDetails._open_note_shared_details_validator,
    'sf_add_group_details': EventDetails._sf_add_group_details_validator,
    'sf_allow_non_members_to_view_shared_links_details': EventDetails._sf_allow_non_members_to_view_shared_links_details_validator,
    'sf_external_invite_warn_details': EventDetails._sf_external_invite_warn_details_validator,
    'sf_fb_invite_details': EventDetails._sf_fb_invite_details_validator,
    'sf_fb_invite_change_role_details': EventDetails._sf_fb_invite_change_role_details_validator,
    'sf_fb_uninvite_details': EventDetails._sf_fb_uninvite_details_validator,
    'sf_invite_group_details': EventDetails._sf_invite_group_details_validator,
    'sf_team_grant_access_details': EventDetails._sf_team_grant_access_details_validator,
    'sf_team_invite_details': EventDetails._sf_team_invite_details_validator,
    'sf_team_invite_change_role_details': EventDetails._sf_team_invite_change_role_details_validator,
    'sf_team_join_details': EventDetails._sf_team_join_details_validator,
    'sf_team_join_from_oob_link_details': EventDetails._sf_team_join_from_oob_link_details_validator,
    'sf_team_uninvite_details': EventDetails._sf_team_uninvite_details_validator,
    'shared_content_add_invitees_details': EventDetails._shared_content_add_invitees_details_validator,
    'shared_content_add_link_expiry_details': EventDetails._shared_content_add_link_expiry_details_validator,
    'shared_content_add_link_password_details': EventDetails._shared_content_add_link_password_details_validator,
    'shared_content_add_member_details': EventDetails._shared_content_add_member_details_validator,
    'shared_content_change_downloads_policy_details': EventDetails._shared_content_change_downloads_policy_details_validator,
    'shared_content_change_invitee_role_details': EventDetails._shared_content_change_invitee_role_details_validator,
    'shared_content_change_link_audience_details': EventDetails._shared_content_change_link_audience_details_validator,
    'shared_content_change_link_expiry_details': EventDetails._shared_content_change_link_expiry_details_validator,
    'shared_content_change_link_password_details': EventDetails._shared_content_change_link_password_details_validator,
    'shared_content_change_member_role_details': EventDetails._shared_content_change_member_role_details_validator,
    'shared_content_change_viewer_info_policy_details': EventDetails._shared_content_change_viewer_info_policy_details_validator,
    'shared_content_claim_invitation_details': EventDetails._shared_content_claim_invitation_details_validator,
    'shared_content_copy_details': EventDetails._shared_content_copy_details_validator,
    'shared_content_download_details': EventDetails._shared_content_download_details_validator,
    'shared_content_relinquish_membership_details': EventDetails._shared_content_relinquish_membership_details_validator,
    'shared_content_remove_invitees_details': EventDetails._shared_content_remove_invitees_details_validator,
    'shared_content_remove_link_expiry_details': EventDetails._shared_content_remove_link_expiry_details_validator,
    'shared_content_remove_link_password_details': EventDetails._shared_content_remove_link_password_details_validator,
    'shared_content_remove_member_details': EventDetails._shared_content_remove_member_details_validator,
    'shared_content_request_access_details': EventDetails._shared_content_request_access_details_validator,
    'shared_content_restore_invitees_details': EventDetails._shared_content_restore_invitees_details_validator,
    'shared_content_restore_member_details': EventDetails._shared_content_restore_member_details_validator,
    'shared_content_unshare_details': EventDetails._shared_content_unshare_details_validator,
    'shared_content_view_details': EventDetails._shared_content_view_details_validator,
    'shared_folder_change_link_policy_details': EventDetails._shared_folder_change_link_policy_details_validator,
    'shared_folder_change_members_inheritance_policy_details': EventDetails._shared_folder_change_members_inheritance_policy_details_validator,
    'shared_folder_change_members_management_policy_details': EventDetails._shared_folder_change_members_management_policy_details_validator,
    'shared_folder_change_members_policy_details': EventDetails._shared_folder_change_members_policy_details_validator,
    'shared_folder_create_details': EventDetails._shared_folder_create_details_validator,
    'shared_folder_decline_invitation_details': EventDetails._shared_folder_decline_invitation_details_validator,
    'shared_folder_mount_details': EventDetails._shared_folder_mount_details_validator,
    'shared_folder_nest_details': EventDetails._shared_folder_nest_details_validator,
    'shared_folder_transfer_ownership_details': EventDetails._shared_folder_transfer_ownership_details_validator,
    'shared_folder_unmount_details': EventDetails._shared_folder_unmount_details_validator,
    'shared_link_add_expiry_details': EventDetails._shared_link_add_expiry_details_validator,
    'shared_link_change_expiry_details': EventDetails._shared_link_change_expiry_details_validator,
    'shared_link_change_visibility_details': EventDetails._shared_link_change_visibility_details_validator,
    'shared_link_copy_details': EventDetails._shared_link_copy_details_validator,
    'shared_link_create_details': EventDetails._shared_link_create_details_validator,
    'shared_link_disable_details': EventDetails._shared_link_disable_details_validator,
    'shared_link_download_details': EventDetails._shared_link_download_details_validator,
    'shared_link_remove_expiry_details': EventDetails._shared_link_remove_expiry_details_validator,
    'shared_link_settings_add_expiration_details': EventDetails._shared_link_settings_add_expiration_details_validator,
    'shared_link_settings_add_password_details': EventDetails._shared_link_settings_add_password_details_validator,
    'shared_link_settings_allow_download_disabled_details': EventDetails._shared_link_settings_allow_download_disabled_details_validator,
    'shared_link_settings_allow_download_enabled_details': EventDetails._shared_link_settings_allow_download_enabled_details_validator,
    'shared_link_settings_change_audience_details': EventDetails._shared_link_settings_change_audience_details_validator,
    'shared_link_settings_change_expiration_details': EventDetails._shared_link_settings_change_expiration_details_validator,
    'shared_link_settings_change_password_details': EventDetails._shared_link_settings_change_password_details_validator,
    'shared_link_settings_remove_expiration_details': EventDetails._shared_link_settings_remove_expiration_details_validator,
    'shared_link_settings_remove_password_details': EventDetails._shared_link_settings_remove_password_details_validator,
    'shared_link_share_details': EventDetails._shared_link_share_details_validator,
    'shared_link_view_details': EventDetails._shared_link_view_details_validator,
    'shared_note_opened_details': EventDetails._shared_note_opened_details_validator,
    'shmodel_disable_downloads_details': EventDetails._shmodel_disable_downloads_details_validator,
    'shmodel_enable_downloads_details': EventDetails._shmodel_enable_downloads_details_validator,
    'shmodel_group_share_details': EventDetails._shmodel_group_share_details_validator,
    'showcase_access_granted_details': EventDetails._showcase_access_granted_details_validator,
    'showcase_add_member_details': EventDetails._showcase_add_member_details_validator,
    'showcase_archived_details': EventDetails._showcase_archived_details_validator,
    'showcase_created_details': EventDetails._showcase_created_details_validator,
    'showcase_delete_comment_details': EventDetails._showcase_delete_comment_details_validator,
    'showcase_edited_details': EventDetails._showcase_edited_details_validator,
    'showcase_edit_comment_details': EventDetails._showcase_edit_comment_details_validator,
    'showcase_file_added_details': EventDetails._showcase_file_added_details_validator,
    'showcase_file_download_details': EventDetails._showcase_file_download_details_validator,
    'showcase_file_removed_details': EventDetails._showcase_file_removed_details_validator,
    'showcase_file_view_details': EventDetails._showcase_file_view_details_validator,
    'showcase_permanently_deleted_details': EventDetails._showcase_permanently_deleted_details_validator,
    'showcase_post_comment_details': EventDetails._showcase_post_comment_details_validator,
    'showcase_remove_member_details': EventDetails._showcase_remove_member_details_validator,
    'showcase_renamed_details': EventDetails._showcase_renamed_details_validator,
    'showcase_request_access_details': EventDetails._showcase_request_access_details_validator,
    'showcase_resolve_comment_details': EventDetails._showcase_resolve_comment_details_validator,
    'showcase_restored_details': EventDetails._showcase_restored_details_validator,
    'showcase_trashed_details': EventDetails._showcase_trashed_details_validator,
    'showcase_trashed_deprecated_details': EventDetails._showcase_trashed_deprecated_details_validator,
    'showcase_unresolve_comment_details': EventDetails._showcase_unresolve_comment_details_validator,
    'showcase_untrashed_details': EventDetails._showcase_untrashed_details_validator,
    'showcase_untrashed_deprecated_details': EventDetails._showcase_untrashed_deprecated_details_validator,
    'showcase_view_details': EventDetails._showcase_view_details_validator,
    'sso_add_cert_details': EventDetails._sso_add_cert_details_validator,
    'sso_add_login_url_details': EventDetails._sso_add_login_url_details_validator,
    'sso_add_logout_url_details': EventDetails._sso_add_logout_url_details_validator,
    'sso_change_cert_details': EventDetails._sso_change_cert_details_validator,
    'sso_change_login_url_details': EventDetails._sso_change_login_url_details_validator,
    'sso_change_logout_url_details': EventDetails._sso_change_logout_url_details_validator,
    'sso_change_saml_identity_mode_details': EventDetails._sso_change_saml_identity_mode_details_validator,
    'sso_remove_cert_details': EventDetails._sso_remove_cert_details_validator,
    'sso_remove_login_url_details': EventDetails._sso_remove_login_url_details_validator,
    'sso_remove_logout_url_details': EventDetails._sso_remove_logout_url_details_validator,
    'team_folder_change_status_details': EventDetails._team_folder_change_status_details_validator,
    'team_folder_create_details': EventDetails._team_folder_create_details_validator,
    'team_folder_downgrade_details': EventDetails._team_folder_downgrade_details_validator,
    'team_folder_permanently_delete_details': EventDetails._team_folder_permanently_delete_details_validator,
    'team_folder_rename_details': EventDetails._team_folder_rename_details_validator,
    'team_selective_sync_settings_changed_details': EventDetails._team_selective_sync_settings_changed_details_validator,
    'account_capture_change_policy_details': EventDetails._account_capture_change_policy_details_validator,
    'admin_email_reminders_changed_details': EventDetails._admin_email_reminders_changed_details_validator,
    'allow_download_disabled_details': EventDetails._allow_download_disabled_details_validator,
    'allow_download_enabled_details': EventDetails._allow_download_enabled_details_validator,
    'app_permissions_changed_details': EventDetails._app_permissions_changed_details_validator,
    'camera_uploads_policy_changed_details': EventDetails._camera_uploads_policy_changed_details_validator,
    'capture_transcript_policy_changed_details': EventDetails._capture_transcript_policy_changed_details_validator,
    'classification_change_policy_details': EventDetails._classification_change_policy_details_validator,
    'computer_backup_policy_changed_details': EventDetails._computer_backup_policy_changed_details_validator,
    'content_administration_policy_changed_details': EventDetails._content_administration_policy_changed_details_validator,
    'data_placement_restriction_change_policy_details': EventDetails._data_placement_restriction_change_policy_details_validator,
    'data_placement_restriction_satisfy_policy_details': EventDetails._data_placement_restriction_satisfy_policy_details_validator,
    'device_approvals_add_exception_details': EventDetails._device_approvals_add_exception_details_validator,
    'device_approvals_change_desktop_policy_details': EventDetails._device_approvals_change_desktop_policy_details_validator,
    'device_approvals_change_mobile_policy_details': EventDetails._device_approvals_change_mobile_policy_details_validator,
    'device_approvals_change_overage_action_details': EventDetails._device_approvals_change_overage_action_details_validator,
    'device_approvals_change_unlink_action_details': EventDetails._device_approvals_change_unlink_action_details_validator,
    'device_approvals_remove_exception_details': EventDetails._device_approvals_remove_exception_details_validator,
    'directory_restrictions_add_members_details': EventDetails._directory_restrictions_add_members_details_validator,
    'directory_restrictions_remove_members_details': EventDetails._directory_restrictions_remove_members_details_validator,
    'dropbox_passwords_policy_changed_details': EventDetails._dropbox_passwords_policy_changed_details_validator,
    'email_ingest_policy_changed_details': EventDetails._email_ingest_policy_changed_details_validator,
    'emm_add_exception_details': EventDetails._emm_add_exception_details_validator,
    'emm_change_policy_details': EventDetails._emm_change_policy_details_validator,
    'emm_remove_exception_details': EventDetails._emm_remove_exception_details_validator,
    'extended_version_history_change_policy_details': EventDetails._extended_version_history_change_policy_details_validator,
    'external_drive_backup_policy_changed_details': EventDetails._external_drive_backup_policy_changed_details_validator,
    'file_comments_change_policy_details': EventDetails._file_comments_change_policy_details_validator,
    'file_locking_policy_changed_details': EventDetails._file_locking_policy_changed_details_validator,
    'file_provider_migration_policy_changed_details': EventDetails._file_provider_migration_policy_changed_details_validator,
    'file_requests_change_policy_details': EventDetails._file_requests_change_policy_details_validator,
    'file_requests_emails_enabled_details': EventDetails._file_requests_emails_enabled_details_validator,
    'file_requests_emails_restricted_to_team_only_details': EventDetails._file_requests_emails_restricted_to_team_only_details_validator,
    'file_transfers_policy_changed_details': EventDetails._file_transfers_policy_changed_details_validator,
    'folder_link_restriction_policy_changed_details': EventDetails._folder_link_restriction_policy_changed_details_validator,
    'google_sso_change_policy_details': EventDetails._google_sso_change_policy_details_validator,
    'group_user_management_change_policy_details': EventDetails._group_user_management_change_policy_details_validator,
    'integration_policy_changed_details': EventDetails._integration_policy_changed_details_validator,
    'invite_acceptance_email_policy_changed_details': EventDetails._invite_acceptance_email_policy_changed_details_validator,
    'member_requests_change_policy_details': EventDetails._member_requests_change_policy_details_validator,
    'member_send_invite_policy_changed_details': EventDetails._member_send_invite_policy_changed_details_validator,
    'member_space_limits_add_exception_details': EventDetails._member_space_limits_add_exception_details_validator,
    'member_space_limits_change_caps_type_policy_details': EventDetails._member_space_limits_change_caps_type_policy_details_validator,
    'member_space_limits_change_policy_details': EventDetails._member_space_limits_change_policy_details_validator,
    'member_space_limits_remove_exception_details': EventDetails._member_space_limits_remove_exception_details_validator,
    'member_suggestions_change_policy_details': EventDetails._member_suggestions_change_policy_details_validator,
    'microsoft_office_addin_change_policy_details': EventDetails._microsoft_office_addin_change_policy_details_validator,
    'network_control_change_policy_details': EventDetails._network_control_change_policy_details_validator,
    'paper_change_deployment_policy_details': EventDetails._paper_change_deployment_policy_details_validator,
    'paper_change_member_link_policy_details': EventDetails._paper_change_member_link_policy_details_validator,
    'paper_change_member_policy_details': EventDetails._paper_change_member_policy_details_validator,
    'paper_change_policy_details': EventDetails._paper_change_policy_details_validator,
    'paper_default_folder_policy_changed_details': EventDetails._paper_default_folder_policy_changed_details_validator,
    'paper_desktop_policy_changed_details': EventDetails._paper_desktop_policy_changed_details_validator,
    'paper_enabled_users_group_addition_details': EventDetails._paper_enabled_users_group_addition_details_validator,
    'paper_enabled_users_group_removal_details': EventDetails._paper_enabled_users_group_removal_details_validator,
    'password_strength_requirements_change_policy_details': EventDetails._password_strength_requirements_change_policy_details_validator,
    'permanent_delete_change_policy_details': EventDetails._permanent_delete_change_policy_details_validator,
    'reseller_support_change_policy_details': EventDetails._reseller_support_change_policy_details_validator,
    'rewind_policy_changed_details': EventDetails._rewind_policy_changed_details_validator,
    'send_for_signature_policy_changed_details': EventDetails._send_for_signature_policy_changed_details_validator,
    'sharing_change_folder_join_policy_details': EventDetails._sharing_change_folder_join_policy_details_validator,
    'sharing_change_link_allow_change_expiration_policy_details': EventDetails._sharing_change_link_allow_change_expiration_policy_details_validator,
    'sharing_change_link_default_expiration_policy_details': EventDetails._sharing_change_link_default_expiration_policy_details_validator,
    'sharing_change_link_enforce_password_policy_details': EventDetails._sharing_change_link_enforce_password_policy_details_validator,
    'sharing_change_link_policy_details': EventDetails._sharing_change_link_policy_details_validator,
    'sharing_change_member_policy_details': EventDetails._sharing_change_member_policy_details_validator,
    'showcase_change_download_policy_details': EventDetails._showcase_change_download_policy_details_validator,
    'showcase_change_enabled_policy_details': EventDetails._showcase_change_enabled_policy_details_validator,
    'showcase_change_external_sharing_policy_details': EventDetails._showcase_change_external_sharing_policy_details_validator,
    'smarter_smart_sync_policy_changed_details': EventDetails._smarter_smart_sync_policy_changed_details_validator,
    'smart_sync_change_policy_details': EventDetails._smart_sync_change_policy_details_validator,
    'smart_sync_not_opt_out_details': EventDetails._smart_sync_not_opt_out_details_validator,
    'smart_sync_opt_out_details': EventDetails._smart_sync_opt_out_details_validator,
    'sso_change_policy_details': EventDetails._sso_change_policy_details_validator,
    'team_branding_policy_changed_details': EventDetails._team_branding_policy_changed_details_validator,
    'team_extensions_policy_changed_details': EventDetails._team_extensions_policy_changed_details_validator,
    'team_selective_sync_policy_changed_details': EventDetails._team_selective_sync_policy_changed_details_validator,
    'team_sharing_whitelist_subjects_changed_details': EventDetails._team_sharing_whitelist_subjects_changed_details_validator,
    'tfa_add_exception_details': EventDetails._tfa_add_exception_details_validator,
    'tfa_change_policy_details': EventDetails._tfa_change_policy_details_validator,
    'tfa_remove_exception_details': EventDetails._tfa_remove_exception_details_validator,
    'two_account_change_policy_details': EventDetails._two_account_change_policy_details_validator,
    'viewer_info_policy_changed_details': EventDetails._viewer_info_policy_changed_details_validator,
    'watermarking_policy_changed_details': EventDetails._watermarking_policy_changed_details_validator,
    'web_sessions_change_active_session_limit_details': EventDetails._web_sessions_change_active_session_limit_details_validator,
    'web_sessions_change_fixed_length_policy_details': EventDetails._web_sessions_change_fixed_length_policy_details_validator,
    'web_sessions_change_idle_length_policy_details': EventDetails._web_sessions_change_idle_length_policy_details_validator,
    'data_residency_migration_request_successful_details': EventDetails._data_residency_migration_request_successful_details_validator,
    'data_residency_migration_request_unsuccessful_details': EventDetails._data_residency_migration_request_unsuccessful_details_validator,
    'team_merge_from_details': EventDetails._team_merge_from_details_validator,
    'team_merge_to_details': EventDetails._team_merge_to_details_validator,
    'team_profile_add_background_details': EventDetails._team_profile_add_background_details_validator,
    'team_profile_add_logo_details': EventDetails._team_profile_add_logo_details_validator,
    'team_profile_change_background_details': EventDetails._team_profile_change_background_details_validator,
    'team_profile_change_default_language_details': EventDetails._team_profile_change_default_language_details_validator,
    'team_profile_change_logo_details': EventDetails._team_profile_change_logo_details_validator,
    'team_profile_change_name_details': EventDetails._team_profile_change_name_details_validator,
    'team_profile_remove_background_details': EventDetails._team_profile_remove_background_details_validator,
    'team_profile_remove_logo_details': EventDetails._team_profile_remove_logo_details_validator,
    'tfa_add_backup_phone_details': EventDetails._tfa_add_backup_phone_details_validator,
    'tfa_add_security_key_details': EventDetails._tfa_add_security_key_details_validator,
    'tfa_change_backup_phone_details': EventDetails._tfa_change_backup_phone_details_validator,
    'tfa_change_status_details': EventDetails._tfa_change_status_details_validator,
    'tfa_remove_backup_phone_details': EventDetails._tfa_remove_backup_phone_details_validator,
    'tfa_remove_security_key_details': EventDetails._tfa_remove_security_key_details_validator,
    'tfa_reset_details': EventDetails._tfa_reset_details_validator,
    'changed_enterprise_admin_role_details': EventDetails._changed_enterprise_admin_role_details_validator,
    'changed_enterprise_connected_team_status_details': EventDetails._changed_enterprise_connected_team_status_details_validator,
    'ended_enterprise_admin_session_details': EventDetails._ended_enterprise_admin_session_details_validator,
    'ended_enterprise_admin_session_deprecated_details': EventDetails._ended_enterprise_admin_session_deprecated_details_validator,
    'enterprise_settings_locking_details': EventDetails._enterprise_settings_locking_details_validator,
    'guest_admin_change_status_details': EventDetails._guest_admin_change_status_details_validator,
    'started_enterprise_admin_session_details': EventDetails._started_enterprise_admin_session_details_validator,
    'team_merge_request_accepted_details': EventDetails._team_merge_request_accepted_details_validator,
    'team_merge_request_accepted_shown_to_primary_team_details': EventDetails._team_merge_request_accepted_shown_to_primary_team_details_validator,
    'team_merge_request_accepted_shown_to_secondary_team_details': EventDetails._team_merge_request_accepted_shown_to_secondary_team_details_validator,
    'team_merge_request_auto_canceled_details': EventDetails._team_merge_request_auto_canceled_details_validator,
    'team_merge_request_canceled_details': EventDetails._team_merge_request_canceled_details_validator,
    'team_merge_request_canceled_shown_to_primary_team_details': EventDetails._team_merge_request_canceled_shown_to_primary_team_details_validator,
    'team_merge_request_canceled_shown_to_secondary_team_details': EventDetails._team_merge_request_canceled_shown_to_secondary_team_details_validator,
    'team_merge_request_expired_details': EventDetails._team_merge_request_expired_details_validator,
    'team_merge_request_expired_shown_to_primary_team_details': EventDetails._team_merge_request_expired_shown_to_primary_team_details_validator,
    'team_merge_request_expired_shown_to_secondary_team_details': EventDetails._team_merge_request_expired_shown_to_secondary_team_details_validator,
    'team_merge_request_rejected_shown_to_primary_team_details': EventDetails._team_merge_request_rejected_shown_to_primary_team_details_validator,
    'team_merge_request_rejected_shown_to_secondary_team_details': EventDetails._team_merge_request_rejected_shown_to_secondary_team_details_validator,
    'team_merge_request_reminder_details': EventDetails._team_merge_request_reminder_details_validator,
    'team_merge_request_reminder_shown_to_primary_team_details': EventDetails._team_merge_request_reminder_shown_to_primary_team_details_validator,
    'team_merge_request_reminder_shown_to_secondary_team_details': EventDetails._team_merge_request_reminder_shown_to_secondary_team_details_validator,
    'team_merge_request_revoked_details': EventDetails._team_merge_request_revoked_details_validator,
    'team_merge_request_sent_shown_to_primary_team_details': EventDetails._team_merge_request_sent_shown_to_primary_team_details_validator,
    'team_merge_request_sent_shown_to_secondary_team_details': EventDetails._team_merge_request_sent_shown_to_secondary_team_details_validator,
    'missing_details': EventDetails._missing_details_validator,
    'other': EventDetails._other_validator,
}

EventDetails.other = EventDetails('other')

EventType._admin_alerting_alert_state_changed_validator = AdminAlertingAlertStateChangedType_validator
EventType._admin_alerting_changed_alert_config_validator = AdminAlertingChangedAlertConfigType_validator
EventType._admin_alerting_triggered_alert_validator = AdminAlertingTriggeredAlertType_validator
EventType._app_blocked_by_permissions_validator = AppBlockedByPermissionsType_validator
EventType._app_link_team_validator = AppLinkTeamType_validator
EventType._app_link_user_validator = AppLinkUserType_validator
EventType._app_unlink_team_validator = AppUnlinkTeamType_validator
EventType._app_unlink_user_validator = AppUnlinkUserType_validator
EventType._integration_connected_validator = IntegrationConnectedType_validator
EventType._integration_disconnected_validator = IntegrationDisconnectedType_validator
EventType._file_add_comment_validator = FileAddCommentType_validator
EventType._file_change_comment_subscription_validator = FileChangeCommentSubscriptionType_validator
EventType._file_delete_comment_validator = FileDeleteCommentType_validator
EventType._file_edit_comment_validator = FileEditCommentType_validator
EventType._file_like_comment_validator = FileLikeCommentType_validator
EventType._file_resolve_comment_validator = FileResolveCommentType_validator
EventType._file_unlike_comment_validator = FileUnlikeCommentType_validator
EventType._file_unresolve_comment_validator = FileUnresolveCommentType_validator
EventType._governance_policy_add_folders_validator = GovernancePolicyAddFoldersType_validator
EventType._governance_policy_add_folder_failed_validator = GovernancePolicyAddFolderFailedType_validator
EventType._governance_policy_content_disposed_validator = GovernancePolicyContentDisposedType_validator
EventType._governance_policy_create_validator = GovernancePolicyCreateType_validator
EventType._governance_policy_delete_validator = GovernancePolicyDeleteType_validator
EventType._governance_policy_edit_details_validator = GovernancePolicyEditDetailsType_validator
EventType._governance_policy_edit_duration_validator = GovernancePolicyEditDurationType_validator
EventType._governance_policy_export_created_validator = GovernancePolicyExportCreatedType_validator
EventType._governance_policy_export_removed_validator = GovernancePolicyExportRemovedType_validator
EventType._governance_policy_remove_folders_validator = GovernancePolicyRemoveFoldersType_validator
EventType._governance_policy_report_created_validator = GovernancePolicyReportCreatedType_validator
EventType._governance_policy_zip_part_downloaded_validator = GovernancePolicyZipPartDownloadedType_validator
EventType._legal_holds_activate_a_hold_validator = LegalHoldsActivateAHoldType_validator
EventType._legal_holds_add_members_validator = LegalHoldsAddMembersType_validator
EventType._legal_holds_change_hold_details_validator = LegalHoldsChangeHoldDetailsType_validator
EventType._legal_holds_change_hold_name_validator = LegalHoldsChangeHoldNameType_validator
EventType._legal_holds_export_a_hold_validator = LegalHoldsExportAHoldType_validator
EventType._legal_holds_export_cancelled_validator = LegalHoldsExportCancelledType_validator
EventType._legal_holds_export_downloaded_validator = LegalHoldsExportDownloadedType_validator
EventType._legal_holds_export_removed_validator = LegalHoldsExportRemovedType_validator
EventType._legal_holds_release_a_hold_validator = LegalHoldsReleaseAHoldType_validator
EventType._legal_holds_remove_members_validator = LegalHoldsRemoveMembersType_validator
EventType._legal_holds_report_a_hold_validator = LegalHoldsReportAHoldType_validator
EventType._device_change_ip_desktop_validator = DeviceChangeIpDesktopType_validator
EventType._device_change_ip_mobile_validator = DeviceChangeIpMobileType_validator
EventType._device_change_ip_web_validator = DeviceChangeIpWebType_validator
EventType._device_delete_on_unlink_fail_validator = DeviceDeleteOnUnlinkFailType_validator
EventType._device_delete_on_unlink_success_validator = DeviceDeleteOnUnlinkSuccessType_validator
EventType._device_link_fail_validator = DeviceLinkFailType_validator
EventType._device_link_success_validator = DeviceLinkSuccessType_validator
EventType._device_management_disabled_validator = DeviceManagementDisabledType_validator
EventType._device_management_enabled_validator = DeviceManagementEnabledType_validator
EventType._device_sync_backup_status_changed_validator = DeviceSyncBackupStatusChangedType_validator
EventType._device_unlink_validator = DeviceUnlinkType_validator
EventType._dropbox_passwords_exported_validator = DropboxPasswordsExportedType_validator
EventType._dropbox_passwords_new_device_enrolled_validator = DropboxPasswordsNewDeviceEnrolledType_validator
EventType._emm_refresh_auth_token_validator = EmmRefreshAuthTokenType_validator
EventType._external_drive_backup_eligibility_status_checked_validator = ExternalDriveBackupEligibilityStatusCheckedType_validator
EventType._external_drive_backup_status_changed_validator = ExternalDriveBackupStatusChangedType_validator
EventType._account_capture_change_availability_validator = AccountCaptureChangeAvailabilityType_validator
EventType._account_capture_migrate_account_validator = AccountCaptureMigrateAccountType_validator
EventType._account_capture_notification_emails_sent_validator = AccountCaptureNotificationEmailsSentType_validator
EventType._account_capture_relinquish_account_validator = AccountCaptureRelinquishAccountType_validator
EventType._disabled_domain_invites_validator = DisabledDomainInvitesType_validator
EventType._domain_invites_approve_request_to_join_team_validator = DomainInvitesApproveRequestToJoinTeamType_validator
EventType._domain_invites_decline_request_to_join_team_validator = DomainInvitesDeclineRequestToJoinTeamType_validator
EventType._domain_invites_email_existing_users_validator = DomainInvitesEmailExistingUsersType_validator
EventType._domain_invites_request_to_join_team_validator = DomainInvitesRequestToJoinTeamType_validator
EventType._domain_invites_set_invite_new_user_pref_to_no_validator = DomainInvitesSetInviteNewUserPrefToNoType_validator
EventType._domain_invites_set_invite_new_user_pref_to_yes_validator = DomainInvitesSetInviteNewUserPrefToYesType_validator
EventType._domain_verification_add_domain_fail_validator = DomainVerificationAddDomainFailType_validator
EventType._domain_verification_add_domain_success_validator = DomainVerificationAddDomainSuccessType_validator
EventType._domain_verification_remove_domain_validator = DomainVerificationRemoveDomainType_validator
EventType._enabled_domain_invites_validator = EnabledDomainInvitesType_validator
EventType._apply_naming_convention_validator = ApplyNamingConventionType_validator
EventType._create_folder_validator = CreateFolderType_validator
EventType._file_add_validator = FileAddType_validator
EventType._file_copy_validator = FileCopyType_validator
EventType._file_delete_validator = FileDeleteType_validator
EventType._file_download_validator = FileDownloadType_validator
EventType._file_edit_validator = FileEditType_validator
EventType._file_get_copy_reference_validator = FileGetCopyReferenceType_validator
EventType._file_locking_lock_status_changed_validator = FileLockingLockStatusChangedType_validator
EventType._file_move_validator = FileMoveType_validator
EventType._file_permanently_delete_validator = FilePermanentlyDeleteType_validator
EventType._file_preview_validator = FilePreviewType_validator
EventType._file_rename_validator = FileRenameType_validator
EventType._file_restore_validator = FileRestoreType_validator
EventType._file_revert_validator = FileRevertType_validator
EventType._file_rollback_changes_validator = FileRollbackChangesType_validator
EventType._file_save_copy_reference_validator = FileSaveCopyReferenceType_validator
EventType._folder_overview_description_changed_validator = FolderOverviewDescriptionChangedType_validator
EventType._folder_overview_item_pinned_validator = FolderOverviewItemPinnedType_validator
EventType._folder_overview_item_unpinned_validator = FolderOverviewItemUnpinnedType_validator
EventType._object_label_added_validator = ObjectLabelAddedType_validator
EventType._object_label_removed_validator = ObjectLabelRemovedType_validator
EventType._object_label_updated_value_validator = ObjectLabelUpdatedValueType_validator
EventType._organize_folder_with_tidy_validator = OrganizeFolderWithTidyType_validator
EventType._rewind_folder_validator = RewindFolderType_validator
EventType._undo_naming_convention_validator = UndoNamingConventionType_validator
EventType._undo_organize_folder_with_tidy_validator = UndoOrganizeFolderWithTidyType_validator
EventType._user_tags_added_validator = UserTagsAddedType_validator
EventType._user_tags_removed_validator = UserTagsRemovedType_validator
EventType._email_ingest_receive_file_validator = EmailIngestReceiveFileType_validator
EventType._file_request_change_validator = FileRequestChangeType_validator
EventType._file_request_close_validator = FileRequestCloseType_validator
EventType._file_request_create_validator = FileRequestCreateType_validator
EventType._file_request_delete_validator = FileRequestDeleteType_validator
EventType._file_request_receive_file_validator = FileRequestReceiveFileType_validator
EventType._group_add_external_id_validator = GroupAddExternalIdType_validator
EventType._group_add_member_validator = GroupAddMemberType_validator
EventType._group_change_external_id_validator = GroupChangeExternalIdType_validator
EventType._group_change_management_type_validator = GroupChangeManagementTypeType_validator
EventType._group_change_member_role_validator = GroupChangeMemberRoleType_validator
EventType._group_create_validator = GroupCreateType_validator
EventType._group_delete_validator = GroupDeleteType_validator
EventType._group_description_updated_validator = GroupDescriptionUpdatedType_validator
EventType._group_join_policy_updated_validator = GroupJoinPolicyUpdatedType_validator
EventType._group_moved_validator = GroupMovedType_validator
EventType._group_remove_external_id_validator = GroupRemoveExternalIdType_validator
EventType._group_remove_member_validator = GroupRemoveMemberType_validator
EventType._group_rename_validator = GroupRenameType_validator
EventType._account_lock_or_unlocked_validator = AccountLockOrUnlockedType_validator
EventType._emm_error_validator = EmmErrorType_validator
EventType._guest_admin_signed_in_via_trusted_teams_validator = GuestAdminSignedInViaTrustedTeamsType_validator
EventType._guest_admin_signed_out_via_trusted_teams_validator = GuestAdminSignedOutViaTrustedTeamsType_validator
EventType._login_fail_validator = LoginFailType_validator
EventType._login_success_validator = LoginSuccessType_validator
EventType._logout_validator = LogoutType_validator
EventType._reseller_support_session_end_validator = ResellerSupportSessionEndType_validator
EventType._reseller_support_session_start_validator = ResellerSupportSessionStartType_validator
EventType._sign_in_as_session_end_validator = SignInAsSessionEndType_validator
EventType._sign_in_as_session_start_validator = SignInAsSessionStartType_validator
EventType._sso_error_validator = SsoErrorType_validator
EventType._create_team_invite_link_validator = CreateTeamInviteLinkType_validator
EventType._delete_team_invite_link_validator = DeleteTeamInviteLinkType_validator
EventType._member_add_external_id_validator = MemberAddExternalIdType_validator
EventType._member_add_name_validator = MemberAddNameType_validator
EventType._member_change_admin_role_validator = MemberChangeAdminRoleType_validator
EventType._member_change_email_validator = MemberChangeEmailType_validator
EventType._member_change_external_id_validator = MemberChangeExternalIdType_validator
EventType._member_change_membership_type_validator = MemberChangeMembershipTypeType_validator
EventType._member_change_name_validator = MemberChangeNameType_validator
EventType._member_change_reseller_role_validator = MemberChangeResellerRoleType_validator
EventType._member_change_status_validator = MemberChangeStatusType_validator
EventType._member_delete_manual_contacts_validator = MemberDeleteManualContactsType_validator
EventType._member_delete_profile_photo_validator = MemberDeleteProfilePhotoType_validator
EventType._member_permanently_delete_account_contents_validator = MemberPermanentlyDeleteAccountContentsType_validator
EventType._member_remove_external_id_validator = MemberRemoveExternalIdType_validator
EventType._member_set_profile_photo_validator = MemberSetProfilePhotoType_validator
EventType._member_space_limits_add_custom_quota_validator = MemberSpaceLimitsAddCustomQuotaType_validator
EventType._member_space_limits_change_custom_quota_validator = MemberSpaceLimitsChangeCustomQuotaType_validator
EventType._member_space_limits_change_status_validator = MemberSpaceLimitsChangeStatusType_validator
EventType._member_space_limits_remove_custom_quota_validator = MemberSpaceLimitsRemoveCustomQuotaType_validator
EventType._member_suggest_validator = MemberSuggestType_validator
EventType._member_transfer_account_contents_validator = MemberTransferAccountContentsType_validator
EventType._pending_secondary_email_added_validator = PendingSecondaryEmailAddedType_validator
EventType._secondary_email_deleted_validator = SecondaryEmailDeletedType_validator
EventType._secondary_email_verified_validator = SecondaryEmailVerifiedType_validator
EventType._secondary_mails_policy_changed_validator = SecondaryMailsPolicyChangedType_validator
EventType._binder_add_page_validator = BinderAddPageType_validator
EventType._binder_add_section_validator = BinderAddSectionType_validator
EventType._binder_remove_page_validator = BinderRemovePageType_validator
EventType._binder_remove_section_validator = BinderRemoveSectionType_validator
EventType._binder_rename_page_validator = BinderRenamePageType_validator
EventType._binder_rename_section_validator = BinderRenameSectionType_validator
EventType._binder_reorder_page_validator = BinderReorderPageType_validator
EventType._binder_reorder_section_validator = BinderReorderSectionType_validator
EventType._paper_content_add_member_validator = PaperContentAddMemberType_validator
EventType._paper_content_add_to_folder_validator = PaperContentAddToFolderType_validator
EventType._paper_content_archive_validator = PaperContentArchiveType_validator
EventType._paper_content_create_validator = PaperContentCreateType_validator
EventType._paper_content_permanently_delete_validator = PaperContentPermanentlyDeleteType_validator
EventType._paper_content_remove_from_folder_validator = PaperContentRemoveFromFolderType_validator
EventType._paper_content_remove_member_validator = PaperContentRemoveMemberType_validator
EventType._paper_content_rename_validator = PaperContentRenameType_validator
EventType._paper_content_restore_validator = PaperContentRestoreType_validator
EventType._paper_doc_add_comment_validator = PaperDocAddCommentType_validator
EventType._paper_doc_change_member_role_validator = PaperDocChangeMemberRoleType_validator
EventType._paper_doc_change_sharing_policy_validator = PaperDocChangeSharingPolicyType_validator
EventType._paper_doc_change_subscription_validator = PaperDocChangeSubscriptionType_validator
EventType._paper_doc_deleted_validator = PaperDocDeletedType_validator
EventType._paper_doc_delete_comment_validator = PaperDocDeleteCommentType_validator
EventType._paper_doc_download_validator = PaperDocDownloadType_validator
EventType._paper_doc_edit_validator = PaperDocEditType_validator
EventType._paper_doc_edit_comment_validator = PaperDocEditCommentType_validator
EventType._paper_doc_followed_validator = PaperDocFollowedType_validator
EventType._paper_doc_mention_validator = PaperDocMentionType_validator
EventType._paper_doc_ownership_changed_validator = PaperDocOwnershipChangedType_validator
EventType._paper_doc_request_access_validator = PaperDocRequestAccessType_validator
EventType._paper_doc_resolve_comment_validator = PaperDocResolveCommentType_validator
EventType._paper_doc_revert_validator = PaperDocRevertType_validator
EventType._paper_doc_slack_share_validator = PaperDocSlackShareType_validator
EventType._paper_doc_team_invite_validator = PaperDocTeamInviteType_validator
EventType._paper_doc_trashed_validator = PaperDocTrashedType_validator
EventType._paper_doc_unresolve_comment_validator = PaperDocUnresolveCommentType_validator
EventType._paper_doc_untrashed_validator = PaperDocUntrashedType_validator
EventType._paper_doc_view_validator = PaperDocViewType_validator
EventType._paper_external_view_allow_validator = PaperExternalViewAllowType_validator
EventType._paper_external_view_default_team_validator = PaperExternalViewDefaultTeamType_validator
EventType._paper_external_view_forbid_validator = PaperExternalViewForbidType_validator
EventType._paper_folder_change_subscription_validator = PaperFolderChangeSubscriptionType_validator
EventType._paper_folder_deleted_validator = PaperFolderDeletedType_validator
EventType._paper_folder_followed_validator = PaperFolderFollowedType_validator
EventType._paper_folder_team_invite_validator = PaperFolderTeamInviteType_validator
EventType._paper_published_link_change_permission_validator = PaperPublishedLinkChangePermissionType_validator
EventType._paper_published_link_create_validator = PaperPublishedLinkCreateType_validator
EventType._paper_published_link_disabled_validator = PaperPublishedLinkDisabledType_validator
EventType._paper_published_link_view_validator = PaperPublishedLinkViewType_validator
EventType._password_change_validator = PasswordChangeType_validator
EventType._password_reset_validator = PasswordResetType_validator
EventType._password_reset_all_validator = PasswordResetAllType_validator
EventType._classification_create_report_validator = ClassificationCreateReportType_validator
EventType._classification_create_report_fail_validator = ClassificationCreateReportFailType_validator
EventType._emm_create_exceptions_report_validator = EmmCreateExceptionsReportType_validator
EventType._emm_create_usage_report_validator = EmmCreateUsageReportType_validator
EventType._export_members_report_validator = ExportMembersReportType_validator
EventType._export_members_report_fail_validator = ExportMembersReportFailType_validator
EventType._external_sharing_create_report_validator = ExternalSharingCreateReportType_validator
EventType._external_sharing_report_failed_validator = ExternalSharingReportFailedType_validator
EventType._no_expiration_link_gen_create_report_validator = NoExpirationLinkGenCreateReportType_validator
EventType._no_expiration_link_gen_report_failed_validator = NoExpirationLinkGenReportFailedType_validator
EventType._no_password_link_gen_create_report_validator = NoPasswordLinkGenCreateReportType_validator
EventType._no_password_link_gen_report_failed_validator = NoPasswordLinkGenReportFailedType_validator
EventType._no_password_link_view_create_report_validator = NoPasswordLinkViewCreateReportType_validator
EventType._no_password_link_view_report_failed_validator = NoPasswordLinkViewReportFailedType_validator
EventType._outdated_link_view_create_report_validator = OutdatedLinkViewCreateReportType_validator
EventType._outdated_link_view_report_failed_validator = OutdatedLinkViewReportFailedType_validator
EventType._paper_admin_export_start_validator = PaperAdminExportStartType_validator
EventType._smart_sync_create_admin_privilege_report_validator = SmartSyncCreateAdminPrivilegeReportType_validator
EventType._team_activity_create_report_validator = TeamActivityCreateReportType_validator
EventType._team_activity_create_report_fail_validator = TeamActivityCreateReportFailType_validator
EventType._collection_share_validator = CollectionShareType_validator
EventType._file_transfers_file_add_validator = FileTransfersFileAddType_validator
EventType._file_transfers_transfer_delete_validator = FileTransfersTransferDeleteType_validator
EventType._file_transfers_transfer_download_validator = FileTransfersTransferDownloadType_validator
EventType._file_transfers_transfer_send_validator = FileTransfersTransferSendType_validator
EventType._file_transfers_transfer_view_validator = FileTransfersTransferViewType_validator
EventType._note_acl_invite_only_validator = NoteAclInviteOnlyType_validator
EventType._note_acl_link_validator = NoteAclLinkType_validator
EventType._note_acl_team_link_validator = NoteAclTeamLinkType_validator
EventType._note_shared_validator = NoteSharedType_validator
EventType._note_share_receive_validator = NoteShareReceiveType_validator
EventType._open_note_shared_validator = OpenNoteSharedType_validator
EventType._sf_add_group_validator = SfAddGroupType_validator
EventType._sf_allow_non_members_to_view_shared_links_validator = SfAllowNonMembersToViewSharedLinksType_validator
EventType._sf_external_invite_warn_validator = SfExternalInviteWarnType_validator
EventType._sf_fb_invite_validator = SfFbInviteType_validator
EventType._sf_fb_invite_change_role_validator = SfFbInviteChangeRoleType_validator
EventType._sf_fb_uninvite_validator = SfFbUninviteType_validator
EventType._sf_invite_group_validator = SfInviteGroupType_validator
EventType._sf_team_grant_access_validator = SfTeamGrantAccessType_validator
EventType._sf_team_invite_validator = SfTeamInviteType_validator
EventType._sf_team_invite_change_role_validator = SfTeamInviteChangeRoleType_validator
EventType._sf_team_join_validator = SfTeamJoinType_validator
EventType._sf_team_join_from_oob_link_validator = SfTeamJoinFromOobLinkType_validator
EventType._sf_team_uninvite_validator = SfTeamUninviteType_validator
EventType._shared_content_add_invitees_validator = SharedContentAddInviteesType_validator
EventType._shared_content_add_link_expiry_validator = SharedContentAddLinkExpiryType_validator
EventType._shared_content_add_link_password_validator = SharedContentAddLinkPasswordType_validator
EventType._shared_content_add_member_validator = SharedContentAddMemberType_validator
EventType._shared_content_change_downloads_policy_validator = SharedContentChangeDownloadsPolicyType_validator
EventType._shared_content_change_invitee_role_validator = SharedContentChangeInviteeRoleType_validator
EventType._shared_content_change_link_audience_validator = SharedContentChangeLinkAudienceType_validator
EventType._shared_content_change_link_expiry_validator = SharedContentChangeLinkExpiryType_validator
EventType._shared_content_change_link_password_validator = SharedContentChangeLinkPasswordType_validator
EventType._shared_content_change_member_role_validator = SharedContentChangeMemberRoleType_validator
EventType._shared_content_change_viewer_info_policy_validator = SharedContentChangeViewerInfoPolicyType_validator
EventType._shared_content_claim_invitation_validator = SharedContentClaimInvitationType_validator
EventType._shared_content_copy_validator = SharedContentCopyType_validator
EventType._shared_content_download_validator = SharedContentDownloadType_validator
EventType._shared_content_relinquish_membership_validator = SharedContentRelinquishMembershipType_validator
EventType._shared_content_remove_invitees_validator = SharedContentRemoveInviteesType_validator
EventType._shared_content_remove_link_expiry_validator = SharedContentRemoveLinkExpiryType_validator
EventType._shared_content_remove_link_password_validator = SharedContentRemoveLinkPasswordType_validator
EventType._shared_content_remove_member_validator = SharedContentRemoveMemberType_validator
EventType._shared_content_request_access_validator = SharedContentRequestAccessType_validator
EventType._shared_content_restore_invitees_validator = SharedContentRestoreInviteesType_validator
EventType._shared_content_restore_member_validator = SharedContentRestoreMemberType_validator
EventType._shared_content_unshare_validator = SharedContentUnshareType_validator
EventType._shared_content_view_validator = SharedContentViewType_validator
EventType._shared_folder_change_link_policy_validator = SharedFolderChangeLinkPolicyType_validator
EventType._shared_folder_change_members_inheritance_policy_validator = SharedFolderChangeMembersInheritancePolicyType_validator
EventType._shared_folder_change_members_management_policy_validator = SharedFolderChangeMembersManagementPolicyType_validator
EventType._shared_folder_change_members_policy_validator = SharedFolderChangeMembersPolicyType_validator
EventType._shared_folder_create_validator = SharedFolderCreateType_validator
EventType._shared_folder_decline_invitation_validator = SharedFolderDeclineInvitationType_validator
EventType._shared_folder_mount_validator = SharedFolderMountType_validator
EventType._shared_folder_nest_validator = SharedFolderNestType_validator
EventType._shared_folder_transfer_ownership_validator = SharedFolderTransferOwnershipType_validator
EventType._shared_folder_unmount_validator = SharedFolderUnmountType_validator
EventType._shared_link_add_expiry_validator = SharedLinkAddExpiryType_validator
EventType._shared_link_change_expiry_validator = SharedLinkChangeExpiryType_validator
EventType._shared_link_change_visibility_validator = SharedLinkChangeVisibilityType_validator
EventType._shared_link_copy_validator = SharedLinkCopyType_validator
EventType._shared_link_create_validator = SharedLinkCreateType_validator
EventType._shared_link_disable_validator = SharedLinkDisableType_validator
EventType._shared_link_download_validator = SharedLinkDownloadType_validator
EventType._shared_link_remove_expiry_validator = SharedLinkRemoveExpiryType_validator
EventType._shared_link_settings_add_expiration_validator = SharedLinkSettingsAddExpirationType_validator
EventType._shared_link_settings_add_password_validator = SharedLinkSettingsAddPasswordType_validator
EventType._shared_link_settings_allow_download_disabled_validator = SharedLinkSettingsAllowDownloadDisabledType_validator
EventType._shared_link_settings_allow_download_enabled_validator = SharedLinkSettingsAllowDownloadEnabledType_validator
EventType._shared_link_settings_change_audience_validator = SharedLinkSettingsChangeAudienceType_validator
EventType._shared_link_settings_change_expiration_validator = SharedLinkSettingsChangeExpirationType_validator
EventType._shared_link_settings_change_password_validator = SharedLinkSettingsChangePasswordType_validator
EventType._shared_link_settings_remove_expiration_validator = SharedLinkSettingsRemoveExpirationType_validator
EventType._shared_link_settings_remove_password_validator = SharedLinkSettingsRemovePasswordType_validator
EventType._shared_link_share_validator = SharedLinkShareType_validator
EventType._shared_link_view_validator = SharedLinkViewType_validator
EventType._shared_note_opened_validator = SharedNoteOpenedType_validator
EventType._shmodel_disable_downloads_validator = ShmodelDisableDownloadsType_validator
EventType._shmodel_enable_downloads_validator = ShmodelEnableDownloadsType_validator
EventType._shmodel_group_share_validator = ShmodelGroupShareType_validator
EventType._showcase_access_granted_validator = ShowcaseAccessGrantedType_validator
EventType._showcase_add_member_validator = ShowcaseAddMemberType_validator
EventType._showcase_archived_validator = ShowcaseArchivedType_validator
EventType._showcase_created_validator = ShowcaseCreatedType_validator
EventType._showcase_delete_comment_validator = ShowcaseDeleteCommentType_validator
EventType._showcase_edited_validator = ShowcaseEditedType_validator
EventType._showcase_edit_comment_validator = ShowcaseEditCommentType_validator
EventType._showcase_file_added_validator = ShowcaseFileAddedType_validator
EventType._showcase_file_download_validator = ShowcaseFileDownloadType_validator
EventType._showcase_file_removed_validator = ShowcaseFileRemovedType_validator
EventType._showcase_file_view_validator = ShowcaseFileViewType_validator
EventType._showcase_permanently_deleted_validator = ShowcasePermanentlyDeletedType_validator
EventType._showcase_post_comment_validator = ShowcasePostCommentType_validator
EventType._showcase_remove_member_validator = ShowcaseRemoveMemberType_validator
EventType._showcase_renamed_validator = ShowcaseRenamedType_validator
EventType._showcase_request_access_validator = ShowcaseRequestAccessType_validator
EventType._showcase_resolve_comment_validator = ShowcaseResolveCommentType_validator
EventType._showcase_restored_validator = ShowcaseRestoredType_validator
EventType._showcase_trashed_validator = ShowcaseTrashedType_validator
EventType._showcase_trashed_deprecated_validator = ShowcaseTrashedDeprecatedType_validator
EventType._showcase_unresolve_comment_validator = ShowcaseUnresolveCommentType_validator
EventType._showcase_untrashed_validator = ShowcaseUntrashedType_validator
EventType._showcase_untrashed_deprecated_validator = ShowcaseUntrashedDeprecatedType_validator
EventType._showcase_view_validator = ShowcaseViewType_validator
EventType._sso_add_cert_validator = SsoAddCertType_validator
EventType._sso_add_login_url_validator = SsoAddLoginUrlType_validator
EventType._sso_add_logout_url_validator = SsoAddLogoutUrlType_validator
EventType._sso_change_cert_validator = SsoChangeCertType_validator
EventType._sso_change_login_url_validator = SsoChangeLoginUrlType_validator
EventType._sso_change_logout_url_validator = SsoChangeLogoutUrlType_validator
EventType._sso_change_saml_identity_mode_validator = SsoChangeSamlIdentityModeType_validator
EventType._sso_remove_cert_validator = SsoRemoveCertType_validator
EventType._sso_remove_login_url_validator = SsoRemoveLoginUrlType_validator
EventType._sso_remove_logout_url_validator = SsoRemoveLogoutUrlType_validator
EventType._team_folder_change_status_validator = TeamFolderChangeStatusType_validator
EventType._team_folder_create_validator = TeamFolderCreateType_validator
EventType._team_folder_downgrade_validator = TeamFolderDowngradeType_validator
EventType._team_folder_permanently_delete_validator = TeamFolderPermanentlyDeleteType_validator
EventType._team_folder_rename_validator = TeamFolderRenameType_validator
EventType._team_selective_sync_settings_changed_validator = TeamSelectiveSyncSettingsChangedType_validator
EventType._account_capture_change_policy_validator = AccountCaptureChangePolicyType_validator
EventType._admin_email_reminders_changed_validator = AdminEmailRemindersChangedType_validator
EventType._allow_download_disabled_validator = AllowDownloadDisabledType_validator
EventType._allow_download_enabled_validator = AllowDownloadEnabledType_validator
EventType._app_permissions_changed_validator = AppPermissionsChangedType_validator
EventType._camera_uploads_policy_changed_validator = CameraUploadsPolicyChangedType_validator
EventType._capture_transcript_policy_changed_validator = CaptureTranscriptPolicyChangedType_validator
EventType._classification_change_policy_validator = ClassificationChangePolicyType_validator
EventType._computer_backup_policy_changed_validator = ComputerBackupPolicyChangedType_validator
EventType._content_administration_policy_changed_validator = ContentAdministrationPolicyChangedType_validator
EventType._data_placement_restriction_change_policy_validator = DataPlacementRestrictionChangePolicyType_validator
EventType._data_placement_restriction_satisfy_policy_validator = DataPlacementRestrictionSatisfyPolicyType_validator
EventType._device_approvals_add_exception_validator = DeviceApprovalsAddExceptionType_validator
EventType._device_approvals_change_desktop_policy_validator = DeviceApprovalsChangeDesktopPolicyType_validator
EventType._device_approvals_change_mobile_policy_validator = DeviceApprovalsChangeMobilePolicyType_validator
EventType._device_approvals_change_overage_action_validator = DeviceApprovalsChangeOverageActionType_validator
EventType._device_approvals_change_unlink_action_validator = DeviceApprovalsChangeUnlinkActionType_validator
EventType._device_approvals_remove_exception_validator = DeviceApprovalsRemoveExceptionType_validator
EventType._directory_restrictions_add_members_validator = DirectoryRestrictionsAddMembersType_validator
EventType._directory_restrictions_remove_members_validator = DirectoryRestrictionsRemoveMembersType_validator
EventType._dropbox_passwords_policy_changed_validator = DropboxPasswordsPolicyChangedType_validator
EventType._email_ingest_policy_changed_validator = EmailIngestPolicyChangedType_validator
EventType._emm_add_exception_validator = EmmAddExceptionType_validator
EventType._emm_change_policy_validator = EmmChangePolicyType_validator
EventType._emm_remove_exception_validator = EmmRemoveExceptionType_validator
EventType._extended_version_history_change_policy_validator = ExtendedVersionHistoryChangePolicyType_validator
EventType._external_drive_backup_policy_changed_validator = ExternalDriveBackupPolicyChangedType_validator
EventType._file_comments_change_policy_validator = FileCommentsChangePolicyType_validator
EventType._file_locking_policy_changed_validator = FileLockingPolicyChangedType_validator
EventType._file_provider_migration_policy_changed_validator = FileProviderMigrationPolicyChangedType_validator
EventType._file_requests_change_policy_validator = FileRequestsChangePolicyType_validator
EventType._file_requests_emails_enabled_validator = FileRequestsEmailsEnabledType_validator
EventType._file_requests_emails_restricted_to_team_only_validator = FileRequestsEmailsRestrictedToTeamOnlyType_validator
EventType._file_transfers_policy_changed_validator = FileTransfersPolicyChangedType_validator
EventType._folder_link_restriction_policy_changed_validator = FolderLinkRestrictionPolicyChangedType_validator
EventType._google_sso_change_policy_validator = GoogleSsoChangePolicyType_validator
EventType._group_user_management_change_policy_validator = GroupUserManagementChangePolicyType_validator
EventType._integration_policy_changed_validator = IntegrationPolicyChangedType_validator
EventType._invite_acceptance_email_policy_changed_validator = InviteAcceptanceEmailPolicyChangedType_validator
EventType._member_requests_change_policy_validator = MemberRequestsChangePolicyType_validator
EventType._member_send_invite_policy_changed_validator = MemberSendInvitePolicyChangedType_validator
EventType._member_space_limits_add_exception_validator = MemberSpaceLimitsAddExceptionType_validator
EventType._member_space_limits_change_caps_type_policy_validator = MemberSpaceLimitsChangeCapsTypePolicyType_validator
EventType._member_space_limits_change_policy_validator = MemberSpaceLimitsChangePolicyType_validator
EventType._member_space_limits_remove_exception_validator = MemberSpaceLimitsRemoveExceptionType_validator
EventType._member_suggestions_change_policy_validator = MemberSuggestionsChangePolicyType_validator
EventType._microsoft_office_addin_change_policy_validator = MicrosoftOfficeAddinChangePolicyType_validator
EventType._network_control_change_policy_validator = NetworkControlChangePolicyType_validator
EventType._paper_change_deployment_policy_validator = PaperChangeDeploymentPolicyType_validator
EventType._paper_change_member_link_policy_validator = PaperChangeMemberLinkPolicyType_validator
EventType._paper_change_member_policy_validator = PaperChangeMemberPolicyType_validator
EventType._paper_change_policy_validator = PaperChangePolicyType_validator
EventType._paper_default_folder_policy_changed_validator = PaperDefaultFolderPolicyChangedType_validator
EventType._paper_desktop_policy_changed_validator = PaperDesktopPolicyChangedType_validator
EventType._paper_enabled_users_group_addition_validator = PaperEnabledUsersGroupAdditionType_validator
EventType._paper_enabled_users_group_removal_validator = PaperEnabledUsersGroupRemovalType_validator
EventType._password_strength_requirements_change_policy_validator = PasswordStrengthRequirementsChangePolicyType_validator
EventType._permanent_delete_change_policy_validator = PermanentDeleteChangePolicyType_validator
EventType._reseller_support_change_policy_validator = ResellerSupportChangePolicyType_validator
EventType._rewind_policy_changed_validator = RewindPolicyChangedType_validator
EventType._send_for_signature_policy_changed_validator = SendForSignaturePolicyChangedType_validator
EventType._sharing_change_folder_join_policy_validator = SharingChangeFolderJoinPolicyType_validator
EventType._sharing_change_link_allow_change_expiration_policy_validator = SharingChangeLinkAllowChangeExpirationPolicyType_validator
EventType._sharing_change_link_default_expiration_policy_validator = SharingChangeLinkDefaultExpirationPolicyType_validator
EventType._sharing_change_link_enforce_password_policy_validator = SharingChangeLinkEnforcePasswordPolicyType_validator
EventType._sharing_change_link_policy_validator = SharingChangeLinkPolicyType_validator
EventType._sharing_change_member_policy_validator = SharingChangeMemberPolicyType_validator
EventType._showcase_change_download_policy_validator = ShowcaseChangeDownloadPolicyType_validator
EventType._showcase_change_enabled_policy_validator = ShowcaseChangeEnabledPolicyType_validator
EventType._showcase_change_external_sharing_policy_validator = ShowcaseChangeExternalSharingPolicyType_validator
EventType._smarter_smart_sync_policy_changed_validator = SmarterSmartSyncPolicyChangedType_validator
EventType._smart_sync_change_policy_validator = SmartSyncChangePolicyType_validator
EventType._smart_sync_not_opt_out_validator = SmartSyncNotOptOutType_validator
EventType._smart_sync_opt_out_validator = SmartSyncOptOutType_validator
EventType._sso_change_policy_validator = SsoChangePolicyType_validator
EventType._team_branding_policy_changed_validator = TeamBrandingPolicyChangedType_validator
EventType._team_extensions_policy_changed_validator = TeamExtensionsPolicyChangedType_validator
EventType._team_selective_sync_policy_changed_validator = TeamSelectiveSyncPolicyChangedType_validator
EventType._team_sharing_whitelist_subjects_changed_validator = TeamSharingWhitelistSubjectsChangedType_validator
EventType._tfa_add_exception_validator = TfaAddExceptionType_validator
EventType._tfa_change_policy_validator = TfaChangePolicyType_validator
EventType._tfa_remove_exception_validator = TfaRemoveExceptionType_validator
EventType._two_account_change_policy_validator = TwoAccountChangePolicyType_validator
EventType._viewer_info_policy_changed_validator = ViewerInfoPolicyChangedType_validator
EventType._watermarking_policy_changed_validator = WatermarkingPolicyChangedType_validator
EventType._web_sessions_change_active_session_limit_validator = WebSessionsChangeActiveSessionLimitType_validator
EventType._web_sessions_change_fixed_length_policy_validator = WebSessionsChangeFixedLengthPolicyType_validator
EventType._web_sessions_change_idle_length_policy_validator = WebSessionsChangeIdleLengthPolicyType_validator
EventType._data_residency_migration_request_successful_validator = DataResidencyMigrationRequestSuccessfulType_validator
EventType._data_residency_migration_request_unsuccessful_validator = DataResidencyMigrationRequestUnsuccessfulType_validator
EventType._team_merge_from_validator = TeamMergeFromType_validator
EventType._team_merge_to_validator = TeamMergeToType_validator
EventType._team_profile_add_background_validator = TeamProfileAddBackgroundType_validator
EventType._team_profile_add_logo_validator = TeamProfileAddLogoType_validator
EventType._team_profile_change_background_validator = TeamProfileChangeBackgroundType_validator
EventType._team_profile_change_default_language_validator = TeamProfileChangeDefaultLanguageType_validator
EventType._team_profile_change_logo_validator = TeamProfileChangeLogoType_validator
EventType._team_profile_change_name_validator = TeamProfileChangeNameType_validator
EventType._team_profile_remove_background_validator = TeamProfileRemoveBackgroundType_validator
EventType._team_profile_remove_logo_validator = TeamProfileRemoveLogoType_validator
EventType._tfa_add_backup_phone_validator = TfaAddBackupPhoneType_validator
EventType._tfa_add_security_key_validator = TfaAddSecurityKeyType_validator
EventType._tfa_change_backup_phone_validator = TfaChangeBackupPhoneType_validator
EventType._tfa_change_status_validator = TfaChangeStatusType_validator
EventType._tfa_remove_backup_phone_validator = TfaRemoveBackupPhoneType_validator
EventType._tfa_remove_security_key_validator = TfaRemoveSecurityKeyType_validator
EventType._tfa_reset_validator = TfaResetType_validator
EventType._changed_enterprise_admin_role_validator = ChangedEnterpriseAdminRoleType_validator
EventType._changed_enterprise_connected_team_status_validator = ChangedEnterpriseConnectedTeamStatusType_validator
EventType._ended_enterprise_admin_session_validator = EndedEnterpriseAdminSessionType_validator
EventType._ended_enterprise_admin_session_deprecated_validator = EndedEnterpriseAdminSessionDeprecatedType_validator
EventType._enterprise_settings_locking_validator = EnterpriseSettingsLockingType_validator
EventType._guest_admin_change_status_validator = GuestAdminChangeStatusType_validator
EventType._started_enterprise_admin_session_validator = StartedEnterpriseAdminSessionType_validator
EventType._team_merge_request_accepted_validator = TeamMergeRequestAcceptedType_validator
EventType._team_merge_request_accepted_shown_to_primary_team_validator = TeamMergeRequestAcceptedShownToPrimaryTeamType_validator
EventType._team_merge_request_accepted_shown_to_secondary_team_validator = TeamMergeRequestAcceptedShownToSecondaryTeamType_validator
EventType._team_merge_request_auto_canceled_validator = TeamMergeRequestAutoCanceledType_validator
EventType._team_merge_request_canceled_validator = TeamMergeRequestCanceledType_validator
EventType._team_merge_request_canceled_shown_to_primary_team_validator = TeamMergeRequestCanceledShownToPrimaryTeamType_validator
EventType._team_merge_request_canceled_shown_to_secondary_team_validator = TeamMergeRequestCanceledShownToSecondaryTeamType_validator
EventType._team_merge_request_expired_validator = TeamMergeRequestExpiredType_validator
EventType._team_merge_request_expired_shown_to_primary_team_validator = TeamMergeRequestExpiredShownToPrimaryTeamType_validator
EventType._team_merge_request_expired_shown_to_secondary_team_validator = TeamMergeRequestExpiredShownToSecondaryTeamType_validator
EventType._team_merge_request_rejected_shown_to_primary_team_validator = TeamMergeRequestRejectedShownToPrimaryTeamType_validator
EventType._team_merge_request_rejected_shown_to_secondary_team_validator = TeamMergeRequestRejectedShownToSecondaryTeamType_validator
EventType._team_merge_request_reminder_validator = TeamMergeRequestReminderType_validator
EventType._team_merge_request_reminder_shown_to_primary_team_validator = TeamMergeRequestReminderShownToPrimaryTeamType_validator
EventType._team_merge_request_reminder_shown_to_secondary_team_validator = TeamMergeRequestReminderShownToSecondaryTeamType_validator
EventType._team_merge_request_revoked_validator = TeamMergeRequestRevokedType_validator
EventType._team_merge_request_sent_shown_to_primary_team_validator = TeamMergeRequestSentShownToPrimaryTeamType_validator
EventType._team_merge_request_sent_shown_to_secondary_team_validator = TeamMergeRequestSentShownToSecondaryTeamType_validator
EventType._other_validator = bv.Void()
EventType._tagmap = {
    'admin_alerting_alert_state_changed': EventType._admin_alerting_alert_state_changed_validator,
    'admin_alerting_changed_alert_config': EventType._admin_alerting_changed_alert_config_validator,
    'admin_alerting_triggered_alert': EventType._admin_alerting_triggered_alert_validator,
    'app_blocked_by_permissions': EventType._app_blocked_by_permissions_validator,
    'app_link_team': EventType._app_link_team_validator,
    'app_link_user': EventType._app_link_user_validator,
    'app_unlink_team': EventType._app_unlink_team_validator,
    'app_unlink_user': EventType._app_unlink_user_validator,
    'integration_connected': EventType._integration_connected_validator,
    'integration_disconnected': EventType._integration_disconnected_validator,
    'file_add_comment': EventType._file_add_comment_validator,
    'file_change_comment_subscription': EventType._file_change_comment_subscription_validator,
    'file_delete_comment': EventType._file_delete_comment_validator,
    'file_edit_comment': EventType._file_edit_comment_validator,
    'file_like_comment': EventType._file_like_comment_validator,
    'file_resolve_comment': EventType._file_resolve_comment_validator,
    'file_unlike_comment': EventType._file_unlike_comment_validator,
    'file_unresolve_comment': EventType._file_unresolve_comment_validator,
    'governance_policy_add_folders': EventType._governance_policy_add_folders_validator,
    'governance_policy_add_folder_failed': EventType._governance_policy_add_folder_failed_validator,
    'governance_policy_content_disposed': EventType._governance_policy_content_disposed_validator,
    'governance_policy_create': EventType._governance_policy_create_validator,
    'governance_policy_delete': EventType._governance_policy_delete_validator,
    'governance_policy_edit_details': EventType._governance_policy_edit_details_validator,
    'governance_policy_edit_duration': EventType._governance_policy_edit_duration_validator,
    'governance_policy_export_created': EventType._governance_policy_export_created_validator,
    'governance_policy_export_removed': EventType._governance_policy_export_removed_validator,
    'governance_policy_remove_folders': EventType._governance_policy_remove_folders_validator,
    'governance_policy_report_created': EventType._governance_policy_report_created_validator,
    'governance_policy_zip_part_downloaded': EventType._governance_policy_zip_part_downloaded_validator,
    'legal_holds_activate_a_hold': EventType._legal_holds_activate_a_hold_validator,
    'legal_holds_add_members': EventType._legal_holds_add_members_validator,
    'legal_holds_change_hold_details': EventType._legal_holds_change_hold_details_validator,
    'legal_holds_change_hold_name': EventType._legal_holds_change_hold_name_validator,
    'legal_holds_export_a_hold': EventType._legal_holds_export_a_hold_validator,
    'legal_holds_export_cancelled': EventType._legal_holds_export_cancelled_validator,
    'legal_holds_export_downloaded': EventType._legal_holds_export_downloaded_validator,
    'legal_holds_export_removed': EventType._legal_holds_export_removed_validator,
    'legal_holds_release_a_hold': EventType._legal_holds_release_a_hold_validator,
    'legal_holds_remove_members': EventType._legal_holds_remove_members_validator,
    'legal_holds_report_a_hold': EventType._legal_holds_report_a_hold_validator,
    'device_change_ip_desktop': EventType._device_change_ip_desktop_validator,
    'device_change_ip_mobile': EventType._device_change_ip_mobile_validator,
    'device_change_ip_web': EventType._device_change_ip_web_validator,
    'device_delete_on_unlink_fail': EventType._device_delete_on_unlink_fail_validator,
    'device_delete_on_unlink_success': EventType._device_delete_on_unlink_success_validator,
    'device_link_fail': EventType._device_link_fail_validator,
    'device_link_success': EventType._device_link_success_validator,
    'device_management_disabled': EventType._device_management_disabled_validator,
    'device_management_enabled': EventType._device_management_enabled_validator,
    'device_sync_backup_status_changed': EventType._device_sync_backup_status_changed_validator,
    'device_unlink': EventType._device_unlink_validator,
    'dropbox_passwords_exported': EventType._dropbox_passwords_exported_validator,
    'dropbox_passwords_new_device_enrolled': EventType._dropbox_passwords_new_device_enrolled_validator,
    'emm_refresh_auth_token': EventType._emm_refresh_auth_token_validator,
    'external_drive_backup_eligibility_status_checked': EventType._external_drive_backup_eligibility_status_checked_validator,
    'external_drive_backup_status_changed': EventType._external_drive_backup_status_changed_validator,
    'account_capture_change_availability': EventType._account_capture_change_availability_validator,
    'account_capture_migrate_account': EventType._account_capture_migrate_account_validator,
    'account_capture_notification_emails_sent': EventType._account_capture_notification_emails_sent_validator,
    'account_capture_relinquish_account': EventType._account_capture_relinquish_account_validator,
    'disabled_domain_invites': EventType._disabled_domain_invites_validator,
    'domain_invites_approve_request_to_join_team': EventType._domain_invites_approve_request_to_join_team_validator,
    'domain_invites_decline_request_to_join_team': EventType._domain_invites_decline_request_to_join_team_validator,
    'domain_invites_email_existing_users': EventType._domain_invites_email_existing_users_validator,
    'domain_invites_request_to_join_team': EventType._domain_invites_request_to_join_team_validator,
    'domain_invites_set_invite_new_user_pref_to_no': EventType._domain_invites_set_invite_new_user_pref_to_no_validator,
    'domain_invites_set_invite_new_user_pref_to_yes': EventType._domain_invites_set_invite_new_user_pref_to_yes_validator,
    'domain_verification_add_domain_fail': EventType._domain_verification_add_domain_fail_validator,
    'domain_verification_add_domain_success': EventType._domain_verification_add_domain_success_validator,
    'domain_verification_remove_domain': EventType._domain_verification_remove_domain_validator,
    'enabled_domain_invites': EventType._enabled_domain_invites_validator,
    'apply_naming_convention': EventType._apply_naming_convention_validator,
    'create_folder': EventType._create_folder_validator,
    'file_add': EventType._file_add_validator,
    'file_copy': EventType._file_copy_validator,
    'file_delete': EventType._file_delete_validator,
    'file_download': EventType._file_download_validator,
    'file_edit': EventType._file_edit_validator,
    'file_get_copy_reference': EventType._file_get_copy_reference_validator,
    'file_locking_lock_status_changed': EventType._file_locking_lock_status_changed_validator,
    'file_move': EventType._file_move_validator,
    'file_permanently_delete': EventType._file_permanently_delete_validator,
    'file_preview': EventType._file_preview_validator,
    'file_rename': EventType._file_rename_validator,
    'file_restore': EventType._file_restore_validator,
    'file_revert': EventType._file_revert_validator,
    'file_rollback_changes': EventType._file_rollback_changes_validator,
    'file_save_copy_reference': EventType._file_save_copy_reference_validator,
    'folder_overview_description_changed': EventType._folder_overview_description_changed_validator,
    'folder_overview_item_pinned': EventType._folder_overview_item_pinned_validator,
    'folder_overview_item_unpinned': EventType._folder_overview_item_unpinned_validator,
    'object_label_added': EventType._object_label_added_validator,
    'object_label_removed': EventType._object_label_removed_validator,
    'object_label_updated_value': EventType._object_label_updated_value_validator,
    'organize_folder_with_tidy': EventType._organize_folder_with_tidy_validator,
    'rewind_folder': EventType._rewind_folder_validator,
    'undo_naming_convention': EventType._undo_naming_convention_validator,
    'undo_organize_folder_with_tidy': EventType._undo_organize_folder_with_tidy_validator,
    'user_tags_added': EventType._user_tags_added_validator,
    'user_tags_removed': EventType._user_tags_removed_validator,
    'email_ingest_receive_file': EventType._email_ingest_receive_file_validator,
    'file_request_change': EventType._file_request_change_validator,
    'file_request_close': EventType._file_request_close_validator,
    'file_request_create': EventType._file_request_create_validator,
    'file_request_delete': EventType._file_request_delete_validator,
    'file_request_receive_file': EventType._file_request_receive_file_validator,
    'group_add_external_id': EventType._group_add_external_id_validator,
    'group_add_member': EventType._group_add_member_validator,
    'group_change_external_id': EventType._group_change_external_id_validator,
    'group_change_management_type': EventType._group_change_management_type_validator,
    'group_change_member_role': EventType._group_change_member_role_validator,
    'group_create': EventType._group_create_validator,
    'group_delete': EventType._group_delete_validator,
    'group_description_updated': EventType._group_description_updated_validator,
    'group_join_policy_updated': EventType._group_join_policy_updated_validator,
    'group_moved': EventType._group_moved_validator,
    'group_remove_external_id': EventType._group_remove_external_id_validator,
    'group_remove_member': EventType._group_remove_member_validator,
    'group_rename': EventType._group_rename_validator,
    'account_lock_or_unlocked': EventType._account_lock_or_unlocked_validator,
    'emm_error': EventType._emm_error_validator,
    'guest_admin_signed_in_via_trusted_teams': EventType._guest_admin_signed_in_via_trusted_teams_validator,
    'guest_admin_signed_out_via_trusted_teams': EventType._guest_admin_signed_out_via_trusted_teams_validator,
    'login_fail': EventType._login_fail_validator,
    'login_success': EventType._login_success_validator,
    'logout': EventType._logout_validator,
    'reseller_support_session_end': EventType._reseller_support_session_end_validator,
    'reseller_support_session_start': EventType._reseller_support_session_start_validator,
    'sign_in_as_session_end': EventType._sign_in_as_session_end_validator,
    'sign_in_as_session_start': EventType._sign_in_as_session_start_validator,
    'sso_error': EventType._sso_error_validator,
    'create_team_invite_link': EventType._create_team_invite_link_validator,
    'delete_team_invite_link': EventType._delete_team_invite_link_validator,
    'member_add_external_id': EventType._member_add_external_id_validator,
    'member_add_name': EventType._member_add_name_validator,
    'member_change_admin_role': EventType._member_change_admin_role_validator,
    'member_change_email': EventType._member_change_email_validator,
    'member_change_external_id': EventType._member_change_external_id_validator,
    'member_change_membership_type': EventType._member_change_membership_type_validator,
    'member_change_name': EventType._member_change_name_validator,
    'member_change_reseller_role': EventType._member_change_reseller_role_validator,
    'member_change_status': EventType._member_change_status_validator,
    'member_delete_manual_contacts': EventType._member_delete_manual_contacts_validator,
    'member_delete_profile_photo': EventType._member_delete_profile_photo_validator,
    'member_permanently_delete_account_contents': EventType._member_permanently_delete_account_contents_validator,
    'member_remove_external_id': EventType._member_remove_external_id_validator,
    'member_set_profile_photo': EventType._member_set_profile_photo_validator,
    'member_space_limits_add_custom_quota': EventType._member_space_limits_add_custom_quota_validator,
    'member_space_limits_change_custom_quota': EventType._member_space_limits_change_custom_quota_validator,
    'member_space_limits_change_status': EventType._member_space_limits_change_status_validator,
    'member_space_limits_remove_custom_quota': EventType._member_space_limits_remove_custom_quota_validator,
    'member_suggest': EventType._member_suggest_validator,
    'member_transfer_account_contents': EventType._member_transfer_account_contents_validator,
    'pending_secondary_email_added': EventType._pending_secondary_email_added_validator,
    'secondary_email_deleted': EventType._secondary_email_deleted_validator,
    'secondary_email_verified': EventType._secondary_email_verified_validator,
    'secondary_mails_policy_changed': EventType._secondary_mails_policy_changed_validator,
    'binder_add_page': EventType._binder_add_page_validator,
    'binder_add_section': EventType._binder_add_section_validator,
    'binder_remove_page': EventType._binder_remove_page_validator,
    'binder_remove_section': EventType._binder_remove_section_validator,
    'binder_rename_page': EventType._binder_rename_page_validator,
    'binder_rename_section': EventType._binder_rename_section_validator,
    'binder_reorder_page': EventType._binder_reorder_page_validator,
    'binder_reorder_section': EventType._binder_reorder_section_validator,
    'paper_content_add_member': EventType._paper_content_add_member_validator,
    'paper_content_add_to_folder': EventType._paper_content_add_to_folder_validator,
    'paper_content_archive': EventType._paper_content_archive_validator,
    'paper_content_create': EventType._paper_content_create_validator,
    'paper_content_permanently_delete': EventType._paper_content_permanently_delete_validator,
    'paper_content_remove_from_folder': EventType._paper_content_remove_from_folder_validator,
    'paper_content_remove_member': EventType._paper_content_remove_member_validator,
    'paper_content_rename': EventType._paper_content_rename_validator,
    'paper_content_restore': EventType._paper_content_restore_validator,
    'paper_doc_add_comment': EventType._paper_doc_add_comment_validator,
    'paper_doc_change_member_role': EventType._paper_doc_change_member_role_validator,
    'paper_doc_change_sharing_policy': EventType._paper_doc_change_sharing_policy_validator,
    'paper_doc_change_subscription': EventType._paper_doc_change_subscription_validator,
    'paper_doc_deleted': EventType._paper_doc_deleted_validator,
    'paper_doc_delete_comment': EventType._paper_doc_delete_comment_validator,
    'paper_doc_download': EventType._paper_doc_download_validator,
    'paper_doc_edit': EventType._paper_doc_edit_validator,
    'paper_doc_edit_comment': EventType._paper_doc_edit_comment_validator,
    'paper_doc_followed': EventType._paper_doc_followed_validator,
    'paper_doc_mention': EventType._paper_doc_mention_validator,
    'paper_doc_ownership_changed': EventType._paper_doc_ownership_changed_validator,
    'paper_doc_request_access': EventType._paper_doc_request_access_validator,
    'paper_doc_resolve_comment': EventType._paper_doc_resolve_comment_validator,
    'paper_doc_revert': EventType._paper_doc_revert_validator,
    'paper_doc_slack_share': EventType._paper_doc_slack_share_validator,
    'paper_doc_team_invite': EventType._paper_doc_team_invite_validator,
    'paper_doc_trashed': EventType._paper_doc_trashed_validator,
    'paper_doc_unresolve_comment': EventType._paper_doc_unresolve_comment_validator,
    'paper_doc_untrashed': EventType._paper_doc_untrashed_validator,
    'paper_doc_view': EventType._paper_doc_view_validator,
    'paper_external_view_allow': EventType._paper_external_view_allow_validator,
    'paper_external_view_default_team': EventType._paper_external_view_default_team_validator,
    'paper_external_view_forbid': EventType._paper_external_view_forbid_validator,
    'paper_folder_change_subscription': EventType._paper_folder_change_subscription_validator,
    'paper_folder_deleted': EventType._paper_folder_deleted_validator,
    'paper_folder_followed': EventType._paper_folder_followed_validator,
    'paper_folder_team_invite': EventType._paper_folder_team_invite_validator,
    'paper_published_link_change_permission': EventType._paper_published_link_change_permission_validator,
    'paper_published_link_create': EventType._paper_published_link_create_validator,
    'paper_published_link_disabled': EventType._paper_published_link_disabled_validator,
    'paper_published_link_view': EventType._paper_published_link_view_validator,
    'password_change': EventType._password_change_validator,
    'password_reset': EventType._password_reset_validator,
    'password_reset_all': EventType._password_reset_all_validator,
    'classification_create_report': EventType._classification_create_report_validator,
    'classification_create_report_fail': EventType._classification_create_report_fail_validator,
    'emm_create_exceptions_report': EventType._emm_create_exceptions_report_validator,
    'emm_create_usage_report': EventType._emm_create_usage_report_validator,
    'export_members_report': EventType._export_members_report_validator,
    'export_members_report_fail': EventType._export_members_report_fail_validator,
    'external_sharing_create_report': EventType._external_sharing_create_report_validator,
    'external_sharing_report_failed': EventType._external_sharing_report_failed_validator,
    'no_expiration_link_gen_create_report': EventType._no_expiration_link_gen_create_report_validator,
    'no_expiration_link_gen_report_failed': EventType._no_expiration_link_gen_report_failed_validator,
    'no_password_link_gen_create_report': EventType._no_password_link_gen_create_report_validator,
    'no_password_link_gen_report_failed': EventType._no_password_link_gen_report_failed_validator,
    'no_password_link_view_create_report': EventType._no_password_link_view_create_report_validator,
    'no_password_link_view_report_failed': EventType._no_password_link_view_report_failed_validator,
    'outdated_link_view_create_report': EventType._outdated_link_view_create_report_validator,
    'outdated_link_view_report_failed': EventType._outdated_link_view_report_failed_validator,
    'paper_admin_export_start': EventType._paper_admin_export_start_validator,
    'smart_sync_create_admin_privilege_report': EventType._smart_sync_create_admin_privilege_report_validator,
    'team_activity_create_report': EventType._team_activity_create_report_validator,
    'team_activity_create_report_fail': EventType._team_activity_create_report_fail_validator,
    'collection_share': EventType._collection_share_validator,
    'file_transfers_file_add': EventType._file_transfers_file_add_validator,
    'file_transfers_transfer_delete': EventType._file_transfers_transfer_delete_validator,
    'file_transfers_transfer_download': EventType._file_transfers_transfer_download_validator,
    'file_transfers_transfer_send': EventType._file_transfers_transfer_send_validator,
    'file_transfers_transfer_view': EventType._file_transfers_transfer_view_validator,
    'note_acl_invite_only': EventType._note_acl_invite_only_validator,
    'note_acl_link': EventType._note_acl_link_validator,
    'note_acl_team_link': EventType._note_acl_team_link_validator,
    'note_shared': EventType._note_shared_validator,
    'note_share_receive': EventType._note_share_receive_validator,
    'open_note_shared': EventType._open_note_shared_validator,
    'sf_add_group': EventType._sf_add_group_validator,
    'sf_allow_non_members_to_view_shared_links': EventType._sf_allow_non_members_to_view_shared_links_validator,
    'sf_external_invite_warn': EventType._sf_external_invite_warn_validator,
    'sf_fb_invite': EventType._sf_fb_invite_validator,
    'sf_fb_invite_change_role': EventType._sf_fb_invite_change_role_validator,
    'sf_fb_uninvite': EventType._sf_fb_uninvite_validator,
    'sf_invite_group': EventType._sf_invite_group_validator,
    'sf_team_grant_access': EventType._sf_team_grant_access_validator,
    'sf_team_invite': EventType._sf_team_invite_validator,
    'sf_team_invite_change_role': EventType._sf_team_invite_change_role_validator,
    'sf_team_join': EventType._sf_team_join_validator,
    'sf_team_join_from_oob_link': EventType._sf_team_join_from_oob_link_validator,
    'sf_team_uninvite': EventType._sf_team_uninvite_validator,
    'shared_content_add_invitees': EventType._shared_content_add_invitees_validator,
    'shared_content_add_link_expiry': EventType._shared_content_add_link_expiry_validator,
    'shared_content_add_link_password': EventType._shared_content_add_link_password_validator,
    'shared_content_add_member': EventType._shared_content_add_member_validator,
    'shared_content_change_downloads_policy': EventType._shared_content_change_downloads_policy_validator,
    'shared_content_change_invitee_role': EventType._shared_content_change_invitee_role_validator,
    'shared_content_change_link_audience': EventType._shared_content_change_link_audience_validator,
    'shared_content_change_link_expiry': EventType._shared_content_change_link_expiry_validator,
    'shared_content_change_link_password': EventType._shared_content_change_link_password_validator,
    'shared_content_change_member_role': EventType._shared_content_change_member_role_validator,
    'shared_content_change_viewer_info_policy': EventType._shared_content_change_viewer_info_policy_validator,
    'shared_content_claim_invitation': EventType._shared_content_claim_invitation_validator,
    'shared_content_copy': EventType._shared_content_copy_validator,
    'shared_content_download': EventType._shared_content_download_validator,
    'shared_content_relinquish_membership': EventType._shared_content_relinquish_membership_validator,
    'shared_content_remove_invitees': EventType._shared_content_remove_invitees_validator,
    'shared_content_remove_link_expiry': EventType._shared_content_remove_link_expiry_validator,
    'shared_content_remove_link_password': EventType._shared_content_remove_link_password_validator,
    'shared_content_remove_member': EventType._shared_content_remove_member_validator,
    'shared_content_request_access': EventType._shared_content_request_access_validator,
    'shared_content_restore_invitees': EventType._shared_content_restore_invitees_validator,
    'shared_content_restore_member': EventType._shared_content_restore_member_validator,
    'shared_content_unshare': EventType._shared_content_unshare_validator,
    'shared_content_view': EventType._shared_content_view_validator,
    'shared_folder_change_link_policy': EventType._shared_folder_change_link_policy_validator,
    'shared_folder_change_members_inheritance_policy': EventType._shared_folder_change_members_inheritance_policy_validator,
    'shared_folder_change_members_management_policy': EventType._shared_folder_change_members_management_policy_validator,
    'shared_folder_change_members_policy': EventType._shared_folder_change_members_policy_validator,
    'shared_folder_create': EventType._shared_folder_create_validator,
    'shared_folder_decline_invitation': EventType._shared_folder_decline_invitation_validator,
    'shared_folder_mount': EventType._shared_folder_mount_validator,
    'shared_folder_nest': EventType._shared_folder_nest_validator,
    'shared_folder_transfer_ownership': EventType._shared_folder_transfer_ownership_validator,
    'shared_folder_unmount': EventType._shared_folder_unmount_validator,
    'shared_link_add_expiry': EventType._shared_link_add_expiry_validator,
    'shared_link_change_expiry': EventType._shared_link_change_expiry_validator,
    'shared_link_change_visibility': EventType._shared_link_change_visibility_validator,
    'shared_link_copy': EventType._shared_link_copy_validator,
    'shared_link_create': EventType._shared_link_create_validator,
    'shared_link_disable': EventType._shared_link_disable_validator,
    'shared_link_download': EventType._shared_link_download_validator,
    'shared_link_remove_expiry': EventType._shared_link_remove_expiry_validator,
    'shared_link_settings_add_expiration': EventType._shared_link_settings_add_expiration_validator,
    'shared_link_settings_add_password': EventType._shared_link_settings_add_password_validator,
    'shared_link_settings_allow_download_disabled': EventType._shared_link_settings_allow_download_disabled_validator,
    'shared_link_settings_allow_download_enabled': EventType._shared_link_settings_allow_download_enabled_validator,
    'shared_link_settings_change_audience': EventType._shared_link_settings_change_audience_validator,
    'shared_link_settings_change_expiration': EventType._shared_link_settings_change_expiration_validator,
    'shared_link_settings_change_password': EventType._shared_link_settings_change_password_validator,
    'shared_link_settings_remove_expiration': EventType._shared_link_settings_remove_expiration_validator,
    'shared_link_settings_remove_password': EventType._shared_link_settings_remove_password_validator,
    'shared_link_share': EventType._shared_link_share_validator,
    'shared_link_view': EventType._shared_link_view_validator,
    'shared_note_opened': EventType._shared_note_opened_validator,
    'shmodel_disable_downloads': EventType._shmodel_disable_downloads_validator,
    'shmodel_enable_downloads': EventType._shmodel_enable_downloads_validator,
    'shmodel_group_share': EventType._shmodel_group_share_validator,
    'showcase_access_granted': EventType._showcase_access_granted_validator,
    'showcase_add_member': EventType._showcase_add_member_validator,
    'showcase_archived': EventType._showcase_archived_validator,
    'showcase_created': EventType._showcase_created_validator,
    'showcase_delete_comment': EventType._showcase_delete_comment_validator,
    'showcase_edited': EventType._showcase_edited_validator,
    'showcase_edit_comment': EventType._showcase_edit_comment_validator,
    'showcase_file_added': EventType._showcase_file_added_validator,
    'showcase_file_download': EventType._showcase_file_download_validator,
    'showcase_file_removed': EventType._showcase_file_removed_validator,
    'showcase_file_view': EventType._showcase_file_view_validator,
    'showcase_permanently_deleted': EventType._showcase_permanently_deleted_validator,
    'showcase_post_comment': EventType._showcase_post_comment_validator,
    'showcase_remove_member': EventType._showcase_remove_member_validator,
    'showcase_renamed': EventType._showcase_renamed_validator,
    'showcase_request_access': EventType._showcase_request_access_validator,
    'showcase_resolve_comment': EventType._showcase_resolve_comment_validator,
    'showcase_restored': EventType._showcase_restored_validator,
    'showcase_trashed': EventType._showcase_trashed_validator,
    'showcase_trashed_deprecated': EventType._showcase_trashed_deprecated_validator,
    'showcase_unresolve_comment': EventType._showcase_unresolve_comment_validator,
    'showcase_untrashed': EventType._showcase_untrashed_validator,
    'showcase_untrashed_deprecated': EventType._showcase_untrashed_deprecated_validator,
    'showcase_view': EventType._showcase_view_validator,
    'sso_add_cert': EventType._sso_add_cert_validator,
    'sso_add_login_url': EventType._sso_add_login_url_validator,
    'sso_add_logout_url': EventType._sso_add_logout_url_validator,
    'sso_change_cert': EventType._sso_change_cert_validator,
    'sso_change_login_url': EventType._sso_change_login_url_validator,
    'sso_change_logout_url': EventType._sso_change_logout_url_validator,
    'sso_change_saml_identity_mode': EventType._sso_change_saml_identity_mode_validator,
    'sso_remove_cert': EventType._sso_remove_cert_validator,
    'sso_remove_login_url': EventType._sso_remove_login_url_validator,
    'sso_remove_logout_url': EventType._sso_remove_logout_url_validator,
    'team_folder_change_status': EventType._team_folder_change_status_validator,
    'team_folder_create': EventType._team_folder_create_validator,
    'team_folder_downgrade': EventType._team_folder_downgrade_validator,
    'team_folder_permanently_delete': EventType._team_folder_permanently_delete_validator,
    'team_folder_rename': EventType._team_folder_rename_validator,
    'team_selective_sync_settings_changed': EventType._team_selective_sync_settings_changed_validator,
    'account_capture_change_policy': EventType._account_capture_change_policy_validator,
    'admin_email_reminders_changed': EventType._admin_email_reminders_changed_validator,
    'allow_download_disabled': EventType._allow_download_disabled_validator,
    'allow_download_enabled': EventType._allow_download_enabled_validator,
    'app_permissions_changed': EventType._app_permissions_changed_validator,
    'camera_uploads_policy_changed': EventType._camera_uploads_policy_changed_validator,
    'capture_transcript_policy_changed': EventType._capture_transcript_policy_changed_validator,
    'classification_change_policy': EventType._classification_change_policy_validator,
    'computer_backup_policy_changed': EventType._computer_backup_policy_changed_validator,
    'content_administration_policy_changed': EventType._content_administration_policy_changed_validator,
    'data_placement_restriction_change_policy': EventType._data_placement_restriction_change_policy_validator,
    'data_placement_restriction_satisfy_policy': EventType._data_placement_restriction_satisfy_policy_validator,
    'device_approvals_add_exception': EventType._device_approvals_add_exception_validator,
    'device_approvals_change_desktop_policy': EventType._device_approvals_change_desktop_policy_validator,
    'device_approvals_change_mobile_policy': EventType._device_approvals_change_mobile_policy_validator,
    'device_approvals_change_overage_action': EventType._device_approvals_change_overage_action_validator,
    'device_approvals_change_unlink_action': EventType._device_approvals_change_unlink_action_validator,
    'device_approvals_remove_exception': EventType._device_approvals_remove_exception_validator,
    'directory_restrictions_add_members': EventType._directory_restrictions_add_members_validator,
    'directory_restrictions_remove_members': EventType._directory_restrictions_remove_members_validator,
    'dropbox_passwords_policy_changed': EventType._dropbox_passwords_policy_changed_validator,
    'email_ingest_policy_changed': EventType._email_ingest_policy_changed_validator,
    'emm_add_exception': EventType._emm_add_exception_validator,
    'emm_change_policy': EventType._emm_change_policy_validator,
    'emm_remove_exception': EventType._emm_remove_exception_validator,
    'extended_version_history_change_policy': EventType._extended_version_history_change_policy_validator,
    'external_drive_backup_policy_changed': EventType._external_drive_backup_policy_changed_validator,
    'file_comments_change_policy': EventType._file_comments_change_policy_validator,
    'file_locking_policy_changed': EventType._file_locking_policy_changed_validator,
    'file_provider_migration_policy_changed': EventType._file_provider_migration_policy_changed_validator,
    'file_requests_change_policy': EventType._file_requests_change_policy_validator,
    'file_requests_emails_enabled': EventType._file_requests_emails_enabled_validator,
    'file_requests_emails_restricted_to_team_only': EventType._file_requests_emails_restricted_to_team_only_validator,
    'file_transfers_policy_changed': EventType._file_transfers_policy_changed_validator,
    'folder_link_restriction_policy_changed': EventType._folder_link_restriction_policy_changed_validator,
    'google_sso_change_policy': EventType._google_sso_change_policy_validator,
    'group_user_management_change_policy': EventType._group_user_management_change_policy_validator,
    'integration_policy_changed': EventType._integration_policy_changed_validator,
    'invite_acceptance_email_policy_changed': EventType._invite_acceptance_email_policy_changed_validator,
    'member_requests_change_policy': EventType._member_requests_change_policy_validator,
    'member_send_invite_policy_changed': EventType._member_send_invite_policy_changed_validator,
    'member_space_limits_add_exception': EventType._member_space_limits_add_exception_validator,
    'member_space_limits_change_caps_type_policy': EventType._member_space_limits_change_caps_type_policy_validator,
    'member_space_limits_change_policy': EventType._member_space_limits_change_policy_validator,
    'member_space_limits_remove_exception': EventType._member_space_limits_remove_exception_validator,
    'member_suggestions_change_policy': EventType._member_suggestions_change_policy_validator,
    'microsoft_office_addin_change_policy': EventType._microsoft_office_addin_change_policy_validator,
    'network_control_change_policy': EventType._network_control_change_policy_validator,
    'paper_change_deployment_policy': EventType._paper_change_deployment_policy_validator,
    'paper_change_member_link_policy': EventType._paper_change_member_link_policy_validator,
    'paper_change_member_policy': EventType._paper_change_member_policy_validator,
    'paper_change_policy': EventType._paper_change_policy_validator,
    'paper_default_folder_policy_changed': EventType._paper_default_folder_policy_changed_validator,
    'paper_desktop_policy_changed': EventType._paper_desktop_policy_changed_validator,
    'paper_enabled_users_group_addition': EventType._paper_enabled_users_group_addition_validator,
    'paper_enabled_users_group_removal': EventType._paper_enabled_users_group_removal_validator,
    'password_strength_requirements_change_policy': EventType._password_strength_requirements_change_policy_validator,
    'permanent_delete_change_policy': EventType._permanent_delete_change_policy_validator,
    'reseller_support_change_policy': EventType._reseller_support_change_policy_validator,
    'rewind_policy_changed': EventType._rewind_policy_changed_validator,
    'send_for_signature_policy_changed': EventType._send_for_signature_policy_changed_validator,
    'sharing_change_folder_join_policy': EventType._sharing_change_folder_join_policy_validator,
    'sharing_change_link_allow_change_expiration_policy': EventType._sharing_change_link_allow_change_expiration_policy_validator,
    'sharing_change_link_default_expiration_policy': EventType._sharing_change_link_default_expiration_policy_validator,
    'sharing_change_link_enforce_password_policy': EventType._sharing_change_link_enforce_password_policy_validator,
    'sharing_change_link_policy': EventType._sharing_change_link_policy_validator,
    'sharing_change_member_policy': EventType._sharing_change_member_policy_validator,
    'showcase_change_download_policy': EventType._showcase_change_download_policy_validator,
    'showcase_change_enabled_policy': EventType._showcase_change_enabled_policy_validator,
    'showcase_change_external_sharing_policy': EventType._showcase_change_external_sharing_policy_validator,
    'smarter_smart_sync_policy_changed': EventType._smarter_smart_sync_policy_changed_validator,
    'smart_sync_change_policy': EventType._smart_sync_change_policy_validator,
    'smart_sync_not_opt_out': EventType._smart_sync_not_opt_out_validator,
    'smart_sync_opt_out': EventType._smart_sync_opt_out_validator,
    'sso_change_policy': EventType._sso_change_policy_validator,
    'team_branding_policy_changed': EventType._team_branding_policy_changed_validator,
    'team_extensions_policy_changed': EventType._team_extensions_policy_changed_validator,
    'team_selective_sync_policy_changed': EventType._team_selective_sync_policy_changed_validator,
    'team_sharing_whitelist_subjects_changed': EventType._team_sharing_whitelist_subjects_changed_validator,
    'tfa_add_exception': EventType._tfa_add_exception_validator,
    'tfa_change_policy': EventType._tfa_change_policy_validator,
    'tfa_remove_exception': EventType._tfa_remove_exception_validator,
    'two_account_change_policy': EventType._two_account_change_policy_validator,
    'viewer_info_policy_changed': EventType._viewer_info_policy_changed_validator,
    'watermarking_policy_changed': EventType._watermarking_policy_changed_validator,
    'web_sessions_change_active_session_limit': EventType._web_sessions_change_active_session_limit_validator,
    'web_sessions_change_fixed_length_policy': EventType._web_sessions_change_fixed_length_policy_validator,
    'web_sessions_change_idle_length_policy': EventType._web_sessions_change_idle_length_policy_validator,
    'data_residency_migration_request_successful': EventType._data_residency_migration_request_successful_validator,
    'data_residency_migration_request_unsuccessful': EventType._data_residency_migration_request_unsuccessful_validator,
    'team_merge_from': EventType._team_merge_from_validator,
    'team_merge_to': EventType._team_merge_to_validator,
    'team_profile_add_background': EventType._team_profile_add_background_validator,
    'team_profile_add_logo': EventType._team_profile_add_logo_validator,
    'team_profile_change_background': EventType._team_profile_change_background_validator,
    'team_profile_change_default_language': EventType._team_profile_change_default_language_validator,
    'team_profile_change_logo': EventType._team_profile_change_logo_validator,
    'team_profile_change_name': EventType._team_profile_change_name_validator,
    'team_profile_remove_background': EventType._team_profile_remove_background_validator,
    'team_profile_remove_logo': EventType._team_profile_remove_logo_validator,
    'tfa_add_backup_phone': EventType._tfa_add_backup_phone_validator,
    'tfa_add_security_key': EventType._tfa_add_security_key_validator,
    'tfa_change_backup_phone': EventType._tfa_change_backup_phone_validator,
    'tfa_change_status': EventType._tfa_change_status_validator,
    'tfa_remove_backup_phone': EventType._tfa_remove_backup_phone_validator,
    'tfa_remove_security_key': EventType._tfa_remove_security_key_validator,
    'tfa_reset': EventType._tfa_reset_validator,
    'changed_enterprise_admin_role': EventType._changed_enterprise_admin_role_validator,
    'changed_enterprise_connected_team_status': EventType._changed_enterprise_connected_team_status_validator,
    'ended_enterprise_admin_session': EventType._ended_enterprise_admin_session_validator,
    'ended_enterprise_admin_session_deprecated': EventType._ended_enterprise_admin_session_deprecated_validator,
    'enterprise_settings_locking': EventType._enterprise_settings_locking_validator,
    'guest_admin_change_status': EventType._guest_admin_change_status_validator,
    'started_enterprise_admin_session': EventType._started_enterprise_admin_session_validator,
    'team_merge_request_accepted': EventType._team_merge_request_accepted_validator,
    'team_merge_request_accepted_shown_to_primary_team': EventType._team_merge_request_accepted_shown_to_primary_team_validator,
    'team_merge_request_accepted_shown_to_secondary_team': EventType._team_merge_request_accepted_shown_to_secondary_team_validator,
    'team_merge_request_auto_canceled': EventType._team_merge_request_auto_canceled_validator,
    'team_merge_request_canceled': EventType._team_merge_request_canceled_validator,
    'team_merge_request_canceled_shown_to_primary_team': EventType._team_merge_request_canceled_shown_to_primary_team_validator,
    'team_merge_request_canceled_shown_to_secondary_team': EventType._team_merge_request_canceled_shown_to_secondary_team_validator,
    'team_merge_request_expired': EventType._team_merge_request_expired_validator,
    'team_merge_request_expired_shown_to_primary_team': EventType._team_merge_request_expired_shown_to_primary_team_validator,
    'team_merge_request_expired_shown_to_secondary_team': EventType._team_merge_request_expired_shown_to_secondary_team_validator,
    'team_merge_request_rejected_shown_to_primary_team': EventType._team_merge_request_rejected_shown_to_primary_team_validator,
    'team_merge_request_rejected_shown_to_secondary_team': EventType._team_merge_request_rejected_shown_to_secondary_team_validator,
    'team_merge_request_reminder': EventType._team_merge_request_reminder_validator,
    'team_merge_request_reminder_shown_to_primary_team': EventType._team_merge_request_reminder_shown_to_primary_team_validator,
    'team_merge_request_reminder_shown_to_secondary_team': EventType._team_merge_request_reminder_shown_to_secondary_team_validator,
    'team_merge_request_revoked': EventType._team_merge_request_revoked_validator,
    'team_merge_request_sent_shown_to_primary_team': EventType._team_merge_request_sent_shown_to_primary_team_validator,
    'team_merge_request_sent_shown_to_secondary_team': EventType._team_merge_request_sent_shown_to_secondary_team_validator,
    'other': EventType._other_validator,
}

EventType.other = EventType('other')

EventTypeArg._admin_alerting_alert_state_changed_validator = bv.Void()
EventTypeArg._admin_alerting_changed_alert_config_validator = bv.Void()
EventTypeArg._admin_alerting_triggered_alert_validator = bv.Void()
EventTypeArg._app_blocked_by_permissions_validator = bv.Void()
EventTypeArg._app_link_team_validator = bv.Void()
EventTypeArg._app_link_user_validator = bv.Void()
EventTypeArg._app_unlink_team_validator = bv.Void()
EventTypeArg._app_unlink_user_validator = bv.Void()
EventTypeArg._integration_connected_validator = bv.Void()
EventTypeArg._integration_disconnected_validator = bv.Void()
EventTypeArg._file_add_comment_validator = bv.Void()
EventTypeArg._file_change_comment_subscription_validator = bv.Void()
EventTypeArg._file_delete_comment_validator = bv.Void()
EventTypeArg._file_edit_comment_validator = bv.Void()
EventTypeArg._file_like_comment_validator = bv.Void()
EventTypeArg._file_resolve_comment_validator = bv.Void()
EventTypeArg._file_unlike_comment_validator = bv.Void()
EventTypeArg._file_unresolve_comment_validator = bv.Void()
EventTypeArg._governance_policy_add_folders_validator = bv.Void()
EventTypeArg._governance_policy_add_folder_failed_validator = bv.Void()
EventTypeArg._governance_policy_content_disposed_validator = bv.Void()
EventTypeArg._governance_policy_create_validator = bv.Void()
EventTypeArg._governance_policy_delete_validator = bv.Void()
EventTypeArg._governance_policy_edit_details_validator = bv.Void()
EventTypeArg._governance_policy_edit_duration_validator = bv.Void()
EventTypeArg._governance_policy_export_created_validator = bv.Void()
EventTypeArg._governance_policy_export_removed_validator = bv.Void()
EventTypeArg._governance_policy_remove_folders_validator = bv.Void()
EventTypeArg._governance_policy_report_created_validator = bv.Void()
EventTypeArg._governance_policy_zip_part_downloaded_validator = bv.Void()
EventTypeArg._legal_holds_activate_a_hold_validator = bv.Void()
EventTypeArg._legal_holds_add_members_validator = bv.Void()
EventTypeArg._legal_holds_change_hold_details_validator = bv.Void()
EventTypeArg._legal_holds_change_hold_name_validator = bv.Void()
EventTypeArg._legal_holds_export_a_hold_validator = bv.Void()
EventTypeArg._legal_holds_export_cancelled_validator = bv.Void()
EventTypeArg._legal_holds_export_downloaded_validator = bv.Void()
EventTypeArg._legal_holds_export_removed_validator = bv.Void()
EventTypeArg._legal_holds_release_a_hold_validator = bv.Void()
EventTypeArg._legal_holds_remove_members_validator = bv.Void()
EventTypeArg._legal_holds_report_a_hold_validator = bv.Void()
EventTypeArg._device_change_ip_desktop_validator = bv.Void()
EventTypeArg._device_change_ip_mobile_validator = bv.Void()
EventTypeArg._device_change_ip_web_validator = bv.Void()
EventTypeArg._device_delete_on_unlink_fail_validator = bv.Void()
EventTypeArg._device_delete_on_unlink_success_validator = bv.Void()
EventTypeArg._device_link_fail_validator = bv.Void()
EventTypeArg._device_link_success_validator = bv.Void()
EventTypeArg._device_management_disabled_validator = bv.Void()
EventTypeArg._device_management_enabled_validator = bv.Void()
EventTypeArg._device_sync_backup_status_changed_validator = bv.Void()
EventTypeArg._device_unlink_validator = bv.Void()
EventTypeArg._dropbox_passwords_exported_validator = bv.Void()
EventTypeArg._dropbox_passwords_new_device_enrolled_validator = bv.Void()
EventTypeArg._emm_refresh_auth_token_validator = bv.Void()
EventTypeArg._external_drive_backup_eligibility_status_checked_validator = bv.Void()
EventTypeArg._external_drive_backup_status_changed_validator = bv.Void()
EventTypeArg._account_capture_change_availability_validator = bv.Void()
EventTypeArg._account_capture_migrate_account_validator = bv.Void()
EventTypeArg._account_capture_notification_emails_sent_validator = bv.Void()
EventTypeArg._account_capture_relinquish_account_validator = bv.Void()
EventTypeArg._disabled_domain_invites_validator = bv.Void()
EventTypeArg._domain_invites_approve_request_to_join_team_validator = bv.Void()
EventTypeArg._domain_invites_decline_request_to_join_team_validator = bv.Void()
EventTypeArg._domain_invites_email_existing_users_validator = bv.Void()
EventTypeArg._domain_invites_request_to_join_team_validator = bv.Void()
EventTypeArg._domain_invites_set_invite_new_user_pref_to_no_validator = bv.Void()
EventTypeArg._domain_invites_set_invite_new_user_pref_to_yes_validator = bv.Void()
EventTypeArg._domain_verification_add_domain_fail_validator = bv.Void()
EventTypeArg._domain_verification_add_domain_success_validator = bv.Void()
EventTypeArg._domain_verification_remove_domain_validator = bv.Void()
EventTypeArg._enabled_domain_invites_validator = bv.Void()
EventTypeArg._apply_naming_convention_validator = bv.Void()
EventTypeArg._create_folder_validator = bv.Void()
EventTypeArg._file_add_validator = bv.Void()
EventTypeArg._file_copy_validator = bv.Void()
EventTypeArg._file_delete_validator = bv.Void()
EventTypeArg._file_download_validator = bv.Void()
EventTypeArg._file_edit_validator = bv.Void()
EventTypeArg._file_get_copy_reference_validator = bv.Void()
EventTypeArg._file_locking_lock_status_changed_validator = bv.Void()
EventTypeArg._file_move_validator = bv.Void()
EventTypeArg._file_permanently_delete_validator = bv.Void()
EventTypeArg._file_preview_validator = bv.Void()
EventTypeArg._file_rename_validator = bv.Void()
EventTypeArg._file_restore_validator = bv.Void()
EventTypeArg._file_revert_validator = bv.Void()
EventTypeArg._file_rollback_changes_validator = bv.Void()
EventTypeArg._file_save_copy_reference_validator = bv.Void()
EventTypeArg._folder_overview_description_changed_validator = bv.Void()
EventTypeArg._folder_overview_item_pinned_validator = bv.Void()
EventTypeArg._folder_overview_item_unpinned_validator = bv.Void()
EventTypeArg._object_label_added_validator = bv.Void()
EventTypeArg._object_label_removed_validator = bv.Void()
EventTypeArg._object_label_updated_value_validator = bv.Void()
EventTypeArg._organize_folder_with_tidy_validator = bv.Void()
EventTypeArg._rewind_folder_validator = bv.Void()
EventTypeArg._undo_naming_convention_validator = bv.Void()
EventTypeArg._undo_organize_folder_with_tidy_validator = bv.Void()
EventTypeArg._user_tags_added_validator = bv.Void()
EventTypeArg._user_tags_removed_validator = bv.Void()
EventTypeArg._email_ingest_receive_file_validator = bv.Void()
EventTypeArg._file_request_change_validator = bv.Void()
EventTypeArg._file_request_close_validator = bv.Void()
EventTypeArg._file_request_create_validator = bv.Void()
EventTypeArg._file_request_delete_validator = bv.Void()
EventTypeArg._file_request_receive_file_validator = bv.Void()
EventTypeArg._group_add_external_id_validator = bv.Void()
EventTypeArg._group_add_member_validator = bv.Void()
EventTypeArg._group_change_external_id_validator = bv.Void()
EventTypeArg._group_change_management_type_validator = bv.Void()
EventTypeArg._group_change_member_role_validator = bv.Void()
EventTypeArg._group_create_validator = bv.Void()
EventTypeArg._group_delete_validator = bv.Void()
EventTypeArg._group_description_updated_validator = bv.Void()
EventTypeArg._group_join_policy_updated_validator = bv.Void()
EventTypeArg._group_moved_validator = bv.Void()
EventTypeArg._group_remove_external_id_validator = bv.Void()
EventTypeArg._group_remove_member_validator = bv.Void()
EventTypeArg._group_rename_validator = bv.Void()
EventTypeArg._account_lock_or_unlocked_validator = bv.Void()
EventTypeArg._emm_error_validator = bv.Void()
EventTypeArg._guest_admin_signed_in_via_trusted_teams_validator = bv.Void()
EventTypeArg._guest_admin_signed_out_via_trusted_teams_validator = bv.Void()
EventTypeArg._login_fail_validator = bv.Void()
EventTypeArg._login_success_validator = bv.Void()
EventTypeArg._logout_validator = bv.Void()
EventTypeArg._reseller_support_session_end_validator = bv.Void()
EventTypeArg._reseller_support_session_start_validator = bv.Void()
EventTypeArg._sign_in_as_session_end_validator = bv.Void()
EventTypeArg._sign_in_as_session_start_validator = bv.Void()
EventTypeArg._sso_error_validator = bv.Void()
EventTypeArg._create_team_invite_link_validator = bv.Void()
EventTypeArg._delete_team_invite_link_validator = bv.Void()
EventTypeArg._member_add_external_id_validator = bv.Void()
EventTypeArg._member_add_name_validator = bv.Void()
EventTypeArg._member_change_admin_role_validator = bv.Void()
EventTypeArg._member_change_email_validator = bv.Void()
EventTypeArg._member_change_external_id_validator = bv.Void()
EventTypeArg._member_change_membership_type_validator = bv.Void()
EventTypeArg._member_change_name_validator = bv.Void()
EventTypeArg._member_change_reseller_role_validator = bv.Void()
EventTypeArg._member_change_status_validator = bv.Void()
EventTypeArg._member_delete_manual_contacts_validator = bv.Void()
EventTypeArg._member_delete_profile_photo_validator = bv.Void()
EventTypeArg._member_permanently_delete_account_contents_validator = bv.Void()
EventTypeArg._member_remove_external_id_validator = bv.Void()
EventTypeArg._member_set_profile_photo_validator = bv.Void()
EventTypeArg._member_space_limits_add_custom_quota_validator = bv.Void()
EventTypeArg._member_space_limits_change_custom_quota_validator = bv.Void()
EventTypeArg._member_space_limits_change_status_validator = bv.Void()
EventTypeArg._member_space_limits_remove_custom_quota_validator = bv.Void()
EventTypeArg._member_suggest_validator = bv.Void()
EventTypeArg._member_transfer_account_contents_validator = bv.Void()
EventTypeArg._pending_secondary_email_added_validator = bv.Void()
EventTypeArg._secondary_email_deleted_validator = bv.Void()
EventTypeArg._secondary_email_verified_validator = bv.Void()
EventTypeArg._secondary_mails_policy_changed_validator = bv.Void()
EventTypeArg._binder_add_page_validator = bv.Void()
EventTypeArg._binder_add_section_validator = bv.Void()
EventTypeArg._binder_remove_page_validator = bv.Void()
EventTypeArg._binder_remove_section_validator = bv.Void()
EventTypeArg._binder_rename_page_validator = bv.Void()
EventTypeArg._binder_rename_section_validator = bv.Void()
EventTypeArg._binder_reorder_page_validator = bv.Void()
EventTypeArg._binder_reorder_section_validator = bv.Void()
EventTypeArg._paper_content_add_member_validator = bv.Void()
EventTypeArg._paper_content_add_to_folder_validator = bv.Void()
EventTypeArg._paper_content_archive_validator = bv.Void()
EventTypeArg._paper_content_create_validator = bv.Void()
EventTypeArg._paper_content_permanently_delete_validator = bv.Void()
EventTypeArg._paper_content_remove_from_folder_validator = bv.Void()
EventTypeArg._paper_content_remove_member_validator = bv.Void()
EventTypeArg._paper_content_rename_validator = bv.Void()
EventTypeArg._paper_content_restore_validator = bv.Void()
EventTypeArg._paper_doc_add_comment_validator = bv.Void()
EventTypeArg._paper_doc_change_member_role_validator = bv.Void()
EventTypeArg._paper_doc_change_sharing_policy_validator = bv.Void()
EventTypeArg._paper_doc_change_subscription_validator = bv.Void()
EventTypeArg._paper_doc_deleted_validator = bv.Void()
EventTypeArg._paper_doc_delete_comment_validator = bv.Void()
EventTypeArg._paper_doc_download_validator = bv.Void()
EventTypeArg._paper_doc_edit_validator = bv.Void()
EventTypeArg._paper_doc_edit_comment_validator = bv.Void()
EventTypeArg._paper_doc_followed_validator = bv.Void()
EventTypeArg._paper_doc_mention_validator = bv.Void()
EventTypeArg._paper_doc_ownership_changed_validator = bv.Void()
EventTypeArg._paper_doc_request_access_validator = bv.Void()
EventTypeArg._paper_doc_resolve_comment_validator = bv.Void()
EventTypeArg._paper_doc_revert_validator = bv.Void()
EventTypeArg._paper_doc_slack_share_validator = bv.Void()
EventTypeArg._paper_doc_team_invite_validator = bv.Void()
EventTypeArg._paper_doc_trashed_validator = bv.Void()
EventTypeArg._paper_doc_unresolve_comment_validator = bv.Void()
EventTypeArg._paper_doc_untrashed_validator = bv.Void()
EventTypeArg._paper_doc_view_validator = bv.Void()
EventTypeArg._paper_external_view_allow_validator = bv.Void()
EventTypeArg._paper_external_view_default_team_validator = bv.Void()
EventTypeArg._paper_external_view_forbid_validator = bv.Void()
EventTypeArg._paper_folder_change_subscription_validator = bv.Void()
EventTypeArg._paper_folder_deleted_validator = bv.Void()
EventTypeArg._paper_folder_followed_validator = bv.Void()
EventTypeArg._paper_folder_team_invite_validator = bv.Void()
EventTypeArg._paper_published_link_change_permission_validator = bv.Void()
EventTypeArg._paper_published_link_create_validator = bv.Void()
EventTypeArg._paper_published_link_disabled_validator = bv.Void()
EventTypeArg._paper_published_link_view_validator = bv.Void()
EventTypeArg._password_change_validator = bv.Void()
EventTypeArg._password_reset_validator = bv.Void()
EventTypeArg._password_reset_all_validator = bv.Void()
EventTypeArg._classification_create_report_validator = bv.Void()
EventTypeArg._classification_create_report_fail_validator = bv.Void()
EventTypeArg._emm_create_exceptions_report_validator = bv.Void()
EventTypeArg._emm_create_usage_report_validator = bv.Void()
EventTypeArg._export_members_report_validator = bv.Void()
EventTypeArg._export_members_report_fail_validator = bv.Void()
EventTypeArg._external_sharing_create_report_validator = bv.Void()
EventTypeArg._external_sharing_report_failed_validator = bv.Void()
EventTypeArg._no_expiration_link_gen_create_report_validator = bv.Void()
EventTypeArg._no_expiration_link_gen_report_failed_validator = bv.Void()
EventTypeArg._no_password_link_gen_create_report_validator = bv.Void()
EventTypeArg._no_password_link_gen_report_failed_validator = bv.Void()
EventTypeArg._no_password_link_view_create_report_validator = bv.Void()
EventTypeArg._no_password_link_view_report_failed_validator = bv.Void()
EventTypeArg._outdated_link_view_create_report_validator = bv.Void()
EventTypeArg._outdated_link_view_report_failed_validator = bv.Void()
EventTypeArg._paper_admin_export_start_validator = bv.Void()
EventTypeArg._smart_sync_create_admin_privilege_report_validator = bv.Void()
EventTypeArg._team_activity_create_report_validator = bv.Void()
EventTypeArg._team_activity_create_report_fail_validator = bv.Void()
EventTypeArg._collection_share_validator = bv.Void()
EventTypeArg._file_transfers_file_add_validator = bv.Void()
EventTypeArg._file_transfers_transfer_delete_validator = bv.Void()
EventTypeArg._file_transfers_transfer_download_validator = bv.Void()
EventTypeArg._file_transfers_transfer_send_validator = bv.Void()
EventTypeArg._file_transfers_transfer_view_validator = bv.Void()
EventTypeArg._note_acl_invite_only_validator = bv.Void()
EventTypeArg._note_acl_link_validator = bv.Void()
EventTypeArg._note_acl_team_link_validator = bv.Void()
EventTypeArg._note_shared_validator = bv.Void()
EventTypeArg._note_share_receive_validator = bv.Void()
EventTypeArg._open_note_shared_validator = bv.Void()
EventTypeArg._sf_add_group_validator = bv.Void()
EventTypeArg._sf_allow_non_members_to_view_shared_links_validator = bv.Void()
EventTypeArg._sf_external_invite_warn_validator = bv.Void()
EventTypeArg._sf_fb_invite_validator = bv.Void()
EventTypeArg._sf_fb_invite_change_role_validator = bv.Void()
EventTypeArg._sf_fb_uninvite_validator = bv.Void()
EventTypeArg._sf_invite_group_validator = bv.Void()
EventTypeArg._sf_team_grant_access_validator = bv.Void()
EventTypeArg._sf_team_invite_validator = bv.Void()
EventTypeArg._sf_team_invite_change_role_validator = bv.Void()
EventTypeArg._sf_team_join_validator = bv.Void()
EventTypeArg._sf_team_join_from_oob_link_validator = bv.Void()
EventTypeArg._sf_team_uninvite_validator = bv.Void()
EventTypeArg._shared_content_add_invitees_validator = bv.Void()
EventTypeArg._shared_content_add_link_expiry_validator = bv.Void()
EventTypeArg._shared_content_add_link_password_validator = bv.Void()
EventTypeArg._shared_content_add_member_validator = bv.Void()
EventTypeArg._shared_content_change_downloads_policy_validator = bv.Void()
EventTypeArg._shared_content_change_invitee_role_validator = bv.Void()
EventTypeArg._shared_content_change_link_audience_validator = bv.Void()
EventTypeArg._shared_content_change_link_expiry_validator = bv.Void()
EventTypeArg._shared_content_change_link_password_validator = bv.Void()
EventTypeArg._shared_content_change_member_role_validator = bv.Void()
EventTypeArg._shared_content_change_viewer_info_policy_validator = bv.Void()
EventTypeArg._shared_content_claim_invitation_validator = bv.Void()
EventTypeArg._shared_content_copy_validator = bv.Void()
EventTypeArg._shared_content_download_validator = bv.Void()
EventTypeArg._shared_content_relinquish_membership_validator = bv.Void()
EventTypeArg._shared_content_remove_invitees_validator = bv.Void()
EventTypeArg._shared_content_remove_link_expiry_validator = bv.Void()
EventTypeArg._shared_content_remove_link_password_validator = bv.Void()
EventTypeArg._shared_content_remove_member_validator = bv.Void()
EventTypeArg._shared_content_request_access_validator = bv.Void()
EventTypeArg._shared_content_restore_invitees_validator = bv.Void()
EventTypeArg._shared_content_restore_member_validator = bv.Void()
EventTypeArg._shared_content_unshare_validator = bv.Void()
EventTypeArg._shared_content_view_validator = bv.Void()
EventTypeArg._shared_folder_change_link_policy_validator = bv.Void()
EventTypeArg._shared_folder_change_members_inheritance_policy_validator = bv.Void()
EventTypeArg._shared_folder_change_members_management_policy_validator = bv.Void()
EventTypeArg._shared_folder_change_members_policy_validator = bv.Void()
EventTypeArg._shared_folder_create_validator = bv.Void()
EventTypeArg._shared_folder_decline_invitation_validator = bv.Void()
EventTypeArg._shared_folder_mount_validator = bv.Void()
EventTypeArg._shared_folder_nest_validator = bv.Void()
EventTypeArg._shared_folder_transfer_ownership_validator = bv.Void()
EventTypeArg._shared_folder_unmount_validator = bv.Void()
EventTypeArg._shared_link_add_expiry_validator = bv.Void()
EventTypeArg._shared_link_change_expiry_validator = bv.Void()
EventTypeArg._shared_link_change_visibility_validator = bv.Void()
EventTypeArg._shared_link_copy_validator = bv.Void()
EventTypeArg._shared_link_create_validator = bv.Void()
EventTypeArg._shared_link_disable_validator = bv.Void()
EventTypeArg._shared_link_download_validator = bv.Void()
EventTypeArg._shared_link_remove_expiry_validator = bv.Void()
EventTypeArg._shared_link_settings_add_expiration_validator = bv.Void()
EventTypeArg._shared_link_settings_add_password_validator = bv.Void()
EventTypeArg._shared_link_settings_allow_download_disabled_validator = bv.Void()
EventTypeArg._shared_link_settings_allow_download_enabled_validator = bv.Void()
EventTypeArg._shared_link_settings_change_audience_validator = bv.Void()
EventTypeArg._shared_link_settings_change_expiration_validator = bv.Void()
EventTypeArg._shared_link_settings_change_password_validator = bv.Void()
EventTypeArg._shared_link_settings_remove_expiration_validator = bv.Void()
EventTypeArg._shared_link_settings_remove_password_validator = bv.Void()
EventTypeArg._shared_link_share_validator = bv.Void()
EventTypeArg._shared_link_view_validator = bv.Void()
EventTypeArg._shared_note_opened_validator = bv.Void()
EventTypeArg._shmodel_disable_downloads_validator = bv.Void()
EventTypeArg._shmodel_enable_downloads_validator = bv.Void()
EventTypeArg._shmodel_group_share_validator = bv.Void()
EventTypeArg._showcase_access_granted_validator = bv.Void()
EventTypeArg._showcase_add_member_validator = bv.Void()
EventTypeArg._showcase_archived_validator = bv.Void()
EventTypeArg._showcase_created_validator = bv.Void()
EventTypeArg._showcase_delete_comment_validator = bv.Void()
EventTypeArg._showcase_edited_validator = bv.Void()
EventTypeArg._showcase_edit_comment_validator = bv.Void()
EventTypeArg._showcase_file_added_validator = bv.Void()
EventTypeArg._showcase_file_download_validator = bv.Void()
EventTypeArg._showcase_file_removed_validator = bv.Void()
EventTypeArg._showcase_file_view_validator = bv.Void()
EventTypeArg._showcase_permanently_deleted_validator = bv.Void()
EventTypeArg._showcase_post_comment_validator = bv.Void()
EventTypeArg._showcase_remove_member_validator = bv.Void()
EventTypeArg._showcase_renamed_validator = bv.Void()
EventTypeArg._showcase_request_access_validator = bv.Void()
EventTypeArg._showcase_resolve_comment_validator = bv.Void()
EventTypeArg._showcase_restored_validator = bv.Void()
EventTypeArg._showcase_trashed_validator = bv.Void()
EventTypeArg._showcase_trashed_deprecated_validator = bv.Void()
EventTypeArg._showcase_unresolve_comment_validator = bv.Void()
EventTypeArg._showcase_untrashed_validator = bv.Void()
EventTypeArg._showcase_untrashed_deprecated_validator = bv.Void()
EventTypeArg._showcase_view_validator = bv.Void()
EventTypeArg._sso_add_cert_validator = bv.Void()
EventTypeArg._sso_add_login_url_validator = bv.Void()
EventTypeArg._sso_add_logout_url_validator = bv.Void()
EventTypeArg._sso_change_cert_validator = bv.Void()
EventTypeArg._sso_change_login_url_validator = bv.Void()
EventTypeArg._sso_change_logout_url_validator = bv.Void()
EventTypeArg._sso_change_saml_identity_mode_validator = bv.Void()
EventTypeArg._sso_remove_cert_validator = bv.Void()
EventTypeArg._sso_remove_login_url_validator = bv.Void()
EventTypeArg._sso_remove_logout_url_validator = bv.Void()
EventTypeArg._team_folder_change_status_validator = bv.Void()
EventTypeArg._team_folder_create_validator = bv.Void()
EventTypeArg._team_folder_downgrade_validator = bv.Void()
EventTypeArg._team_folder_permanently_delete_validator = bv.Void()
EventTypeArg._team_folder_rename_validator = bv.Void()
EventTypeArg._team_selective_sync_settings_changed_validator = bv.Void()
EventTypeArg._account_capture_change_policy_validator = bv.Void()
EventTypeArg._admin_email_reminders_changed_validator = bv.Void()
EventTypeArg._allow_download_disabled_validator = bv.Void()
EventTypeArg._allow_download_enabled_validator = bv.Void()
EventTypeArg._app_permissions_changed_validator = bv.Void()
EventTypeArg._camera_uploads_policy_changed_validator = bv.Void()
EventTypeArg._capture_transcript_policy_changed_validator = bv.Void()
EventTypeArg._classification_change_policy_validator = bv.Void()
EventTypeArg._computer_backup_policy_changed_validator = bv.Void()
EventTypeArg._content_administration_policy_changed_validator = bv.Void()
EventTypeArg._data_placement_restriction_change_policy_validator = bv.Void()
EventTypeArg._data_placement_restriction_satisfy_policy_validator = bv.Void()
EventTypeArg._device_approvals_add_exception_validator = bv.Void()
EventTypeArg._device_approvals_change_desktop_policy_validator = bv.Void()
EventTypeArg._device_approvals_change_mobile_policy_validator = bv.Void()
EventTypeArg._device_approvals_change_overage_action_validator = bv.Void()
EventTypeArg._device_approvals_change_unlink_action_validator = bv.Void()
EventTypeArg._device_approvals_remove_exception_validator = bv.Void()
EventTypeArg._directory_restrictions_add_members_validator = bv.Void()
EventTypeArg._directory_restrictions_remove_members_validator = bv.Void()
EventTypeArg._dropbox_passwords_policy_changed_validator = bv.Void()
EventTypeArg._email_ingest_policy_changed_validator = bv.Void()
EventTypeArg._emm_add_exception_validator = bv.Void()
EventTypeArg._emm_change_policy_validator = bv.Void()
EventTypeArg._emm_remove_exception_validator = bv.Void()
EventTypeArg._extended_version_history_change_policy_validator = bv.Void()
EventTypeArg._external_drive_backup_policy_changed_validator = bv.Void()
EventTypeArg._file_comments_change_policy_validator = bv.Void()
EventTypeArg._file_locking_policy_changed_validator = bv.Void()
EventTypeArg._file_provider_migration_policy_changed_validator = bv.Void()
EventTypeArg._file_requests_change_policy_validator = bv.Void()
EventTypeArg._file_requests_emails_enabled_validator = bv.Void()
EventTypeArg._file_requests_emails_restricted_to_team_only_validator = bv.Void()
EventTypeArg._file_transfers_policy_changed_validator = bv.Void()
EventTypeArg._folder_link_restriction_policy_changed_validator = bv.Void()
EventTypeArg._google_sso_change_policy_validator = bv.Void()
EventTypeArg._group_user_management_change_policy_validator = bv.Void()
EventTypeArg._integration_policy_changed_validator = bv.Void()
EventTypeArg._invite_acceptance_email_policy_changed_validator = bv.Void()
EventTypeArg._member_requests_change_policy_validator = bv.Void()
EventTypeArg._member_send_invite_policy_changed_validator = bv.Void()
EventTypeArg._member_space_limits_add_exception_validator = bv.Void()
EventTypeArg._member_space_limits_change_caps_type_policy_validator = bv.Void()
EventTypeArg._member_space_limits_change_policy_validator = bv.Void()
EventTypeArg._member_space_limits_remove_exception_validator = bv.Void()
EventTypeArg._member_suggestions_change_policy_validator = bv.Void()
EventTypeArg._microsoft_office_addin_change_policy_validator = bv.Void()
EventTypeArg._network_control_change_policy_validator = bv.Void()
EventTypeArg._paper_change_deployment_policy_validator = bv.Void()
EventTypeArg._paper_change_member_link_policy_validator = bv.Void()
EventTypeArg._paper_change_member_policy_validator = bv.Void()
EventTypeArg._paper_change_policy_validator = bv.Void()
EventTypeArg._paper_default_folder_policy_changed_validator = bv.Void()
EventTypeArg._paper_desktop_policy_changed_validator = bv.Void()
EventTypeArg._paper_enabled_users_group_addition_validator = bv.Void()
EventTypeArg._paper_enabled_users_group_removal_validator = bv.Void()
EventTypeArg._password_strength_requirements_change_policy_validator = bv.Void()
EventTypeArg._permanent_delete_change_policy_validator = bv.Void()
EventTypeArg._reseller_support_change_policy_validator = bv.Void()
EventTypeArg._rewind_policy_changed_validator = bv.Void()
EventTypeArg._send_for_signature_policy_changed_validator = bv.Void()
EventTypeArg._sharing_change_folder_join_policy_validator = bv.Void()
EventTypeArg._sharing_change_link_allow_change_expiration_policy_validator = bv.Void()
EventTypeArg._sharing_change_link_default_expiration_policy_validator = bv.Void()
EventTypeArg._sharing_change_link_enforce_password_policy_validator = bv.Void()
EventTypeArg._sharing_change_link_policy_validator = bv.Void()
EventTypeArg._sharing_change_member_policy_validator = bv.Void()
EventTypeArg._showcase_change_download_policy_validator = bv.Void()
EventTypeArg._showcase_change_enabled_policy_validator = bv.Void()
EventTypeArg._showcase_change_external_sharing_policy_validator = bv.Void()
EventTypeArg._smarter_smart_sync_policy_changed_validator = bv.Void()
EventTypeArg._smart_sync_change_policy_validator = bv.Void()
EventTypeArg._smart_sync_not_opt_out_validator = bv.Void()
EventTypeArg._smart_sync_opt_out_validator = bv.Void()
EventTypeArg._sso_change_policy_validator = bv.Void()
EventTypeArg._team_branding_policy_changed_validator = bv.Void()
EventTypeArg._team_extensions_policy_changed_validator = bv.Void()
EventTypeArg._team_selective_sync_policy_changed_validator = bv.Void()
EventTypeArg._team_sharing_whitelist_subjects_changed_validator = bv.Void()
EventTypeArg._tfa_add_exception_validator = bv.Void()
EventTypeArg._tfa_change_policy_validator = bv.Void()
EventTypeArg._tfa_remove_exception_validator = bv.Void()
EventTypeArg._two_account_change_policy_validator = bv.Void()
EventTypeArg._viewer_info_policy_changed_validator = bv.Void()
EventTypeArg._watermarking_policy_changed_validator = bv.Void()
EventTypeArg._web_sessions_change_active_session_limit_validator = bv.Void()
EventTypeArg._web_sessions_change_fixed_length_policy_validator = bv.Void()
EventTypeArg._web_sessions_change_idle_length_policy_validator = bv.Void()
EventTypeArg._data_residency_migration_request_successful_validator = bv.Void()
EventTypeArg._data_residency_migration_request_unsuccessful_validator = bv.Void()
EventTypeArg._team_merge_from_validator = bv.Void()
EventTypeArg._team_merge_to_validator = bv.Void()
EventTypeArg._team_profile_add_background_validator = bv.Void()
EventTypeArg._team_profile_add_logo_validator = bv.Void()
EventTypeArg._team_profile_change_background_validator = bv.Void()
EventTypeArg._team_profile_change_default_language_validator = bv.Void()
EventTypeArg._team_profile_change_logo_validator = bv.Void()
EventTypeArg._team_profile_change_name_validator = bv.Void()
EventTypeArg._team_profile_remove_background_validator = bv.Void()
EventTypeArg._team_profile_remove_logo_validator = bv.Void()
EventTypeArg._tfa_add_backup_phone_validator = bv.Void()
EventTypeArg._tfa_add_security_key_validator = bv.Void()
EventTypeArg._tfa_change_backup_phone_validator = bv.Void()
EventTypeArg._tfa_change_status_validator = bv.Void()
EventTypeArg._tfa_remove_backup_phone_validator = bv.Void()
EventTypeArg._tfa_remove_security_key_validator = bv.Void()
EventTypeArg._tfa_reset_validator = bv.Void()
EventTypeArg._changed_enterprise_admin_role_validator = bv.Void()
EventTypeArg._changed_enterprise_connected_team_status_validator = bv.Void()
EventTypeArg._ended_enterprise_admin_session_validator = bv.Void()
EventTypeArg._ended_enterprise_admin_session_deprecated_validator = bv.Void()
EventTypeArg._enterprise_settings_locking_validator = bv.Void()
EventTypeArg._guest_admin_change_status_validator = bv.Void()
EventTypeArg._started_enterprise_admin_session_validator = bv.Void()
EventTypeArg._team_merge_request_accepted_validator = bv.Void()
EventTypeArg._team_merge_request_accepted_shown_to_primary_team_validator = bv.Void()
EventTypeArg._team_merge_request_accepted_shown_to_secondary_team_validator = bv.Void()
EventTypeArg._team_merge_request_auto_canceled_validator = bv.Void()
EventTypeArg._team_merge_request_canceled_validator = bv.Void()
EventTypeArg._team_merge_request_canceled_shown_to_primary_team_validator = bv.Void()
EventTypeArg._team_merge_request_canceled_shown_to_secondary_team_validator = bv.Void()
EventTypeArg._team_merge_request_expired_validator = bv.Void()
EventTypeArg._team_merge_request_expired_shown_to_primary_team_validator = bv.Void()
EventTypeArg._team_merge_request_expired_shown_to_secondary_team_validator = bv.Void()
EventTypeArg._team_merge_request_rejected_shown_to_primary_team_validator = bv.Void()
EventTypeArg._team_merge_request_rejected_shown_to_secondary_team_validator = bv.Void()
EventTypeArg._team_merge_request_reminder_validator = bv.Void()
EventTypeArg._team_merge_request_reminder_shown_to_primary_team_validator = bv.Void()
EventTypeArg._team_merge_request_reminder_shown_to_secondary_team_validator = bv.Void()
EventTypeArg._team_merge_request_revoked_validator = bv.Void()
EventTypeArg._team_merge_request_sent_shown_to_primary_team_validator = bv.Void()
EventTypeArg._team_merge_request_sent_shown_to_secondary_team_validator = bv.Void()
EventTypeArg._other_validator = bv.Void()
EventTypeArg._tagmap = {
    'admin_alerting_alert_state_changed': EventTypeArg._admin_alerting_alert_state_changed_validator,
    'admin_alerting_changed_alert_config': EventTypeArg._admin_alerting_changed_alert_config_validator,
    'admin_alerting_triggered_alert': EventTypeArg._admin_alerting_triggered_alert_validator,
    'app_blocked_by_permissions': EventTypeArg._app_blocked_by_permissions_validator,
    'app_link_team': EventTypeArg._app_link_team_validator,
    'app_link_user': EventTypeArg._app_link_user_validator,
    'app_unlink_team': EventTypeArg._app_unlink_team_validator,
    'app_unlink_user': EventTypeArg._app_unlink_user_validator,
    'integration_connected': EventTypeArg._integration_connected_validator,
    'integration_disconnected': EventTypeArg._integration_disconnected_validator,
    'file_add_comment': EventTypeArg._file_add_comment_validator,
    'file_change_comment_subscription': EventTypeArg._file_change_comment_subscription_validator,
    'file_delete_comment': EventTypeArg._file_delete_comment_validator,
    'file_edit_comment': EventTypeArg._file_edit_comment_validator,
    'file_like_comment': EventTypeArg._file_like_comment_validator,
    'file_resolve_comment': EventTypeArg._file_resolve_comment_validator,
    'file_unlike_comment': EventTypeArg._file_unlike_comment_validator,
    'file_unresolve_comment': EventTypeArg._file_unresolve_comment_validator,
    'governance_policy_add_folders': EventTypeArg._governance_policy_add_folders_validator,
    'governance_policy_add_folder_failed': EventTypeArg._governance_policy_add_folder_failed_validator,
    'governance_policy_content_disposed': EventTypeArg._governance_policy_content_disposed_validator,
    'governance_policy_create': EventTypeArg._governance_policy_create_validator,
    'governance_policy_delete': EventTypeArg._governance_policy_delete_validator,
    'governance_policy_edit_details': EventTypeArg._governance_policy_edit_details_validator,
    'governance_policy_edit_duration': EventTypeArg._governance_policy_edit_duration_validator,
    'governance_policy_export_created': EventTypeArg._governance_policy_export_created_validator,
    'governance_policy_export_removed': EventTypeArg._governance_policy_export_removed_validator,
    'governance_policy_remove_folders': EventTypeArg._governance_policy_remove_folders_validator,
    'governance_policy_report_created': EventTypeArg._governance_policy_report_created_validator,
    'governance_policy_zip_part_downloaded': EventTypeArg._governance_policy_zip_part_downloaded_validator,
    'legal_holds_activate_a_hold': EventTypeArg._legal_holds_activate_a_hold_validator,
    'legal_holds_add_members': EventTypeArg._legal_holds_add_members_validator,
    'legal_holds_change_hold_details': EventTypeArg._legal_holds_change_hold_details_validator,
    'legal_holds_change_hold_name': EventTypeArg._legal_holds_change_hold_name_validator,
    'legal_holds_export_a_hold': EventTypeArg._legal_holds_export_a_hold_validator,
    'legal_holds_export_cancelled': EventTypeArg._legal_holds_export_cancelled_validator,
    'legal_holds_export_downloaded': EventTypeArg._legal_holds_export_downloaded_validator,
    'legal_holds_export_removed': EventTypeArg._legal_holds_export_removed_validator,
    'legal_holds_release_a_hold': EventTypeArg._legal_holds_release_a_hold_validator,
    'legal_holds_remove_members': EventTypeArg._legal_holds_remove_members_validator,
    'legal_holds_report_a_hold': EventTypeArg._legal_holds_report_a_hold_validator,
    'device_change_ip_desktop': EventTypeArg._device_change_ip_desktop_validator,
    'device_change_ip_mobile': EventTypeArg._device_change_ip_mobile_validator,
    'device_change_ip_web': EventTypeArg._device_change_ip_web_validator,
    'device_delete_on_unlink_fail': EventTypeArg._device_delete_on_unlink_fail_validator,
    'device_delete_on_unlink_success': EventTypeArg._device_delete_on_unlink_success_validator,
    'device_link_fail': EventTypeArg._device_link_fail_validator,
    'device_link_success': EventTypeArg._device_link_success_validator,
    'device_management_disabled': EventTypeArg._device_management_disabled_validator,
    'device_management_enabled': EventTypeArg._device_management_enabled_validator,
    'device_sync_backup_status_changed': EventTypeArg._device_sync_backup_status_changed_validator,
    'device_unlink': EventTypeArg._device_unlink_validator,
    'dropbox_passwords_exported': EventTypeArg._dropbox_passwords_exported_validator,
    'dropbox_passwords_new_device_enrolled': EventTypeArg._dropbox_passwords_new_device_enrolled_validator,
    'emm_refresh_auth_token': EventTypeArg._emm_refresh_auth_token_validator,
    'external_drive_backup_eligibility_status_checked': EventTypeArg._external_drive_backup_eligibility_status_checked_validator,
    'external_drive_backup_status_changed': EventTypeArg._external_drive_backup_status_changed_validator,
    'account_capture_change_availability': EventTypeArg._account_capture_change_availability_validator,
    'account_capture_migrate_account': EventTypeArg._account_capture_migrate_account_validator,
    'account_capture_notification_emails_sent': EventTypeArg._account_capture_notification_emails_sent_validator,
    'account_capture_relinquish_account': EventTypeArg._account_capture_relinquish_account_validator,
    'disabled_domain_invites': EventTypeArg._disabled_domain_invites_validator,
    'domain_invites_approve_request_to_join_team': EventTypeArg._domain_invites_approve_request_to_join_team_validator,
    'domain_invites_decline_request_to_join_team': EventTypeArg._domain_invites_decline_request_to_join_team_validator,
    'domain_invites_email_existing_users': EventTypeArg._domain_invites_email_existing_users_validator,
    'domain_invites_request_to_join_team': EventTypeArg._domain_invites_request_to_join_team_validator,
    'domain_invites_set_invite_new_user_pref_to_no': EventTypeArg._domain_invites_set_invite_new_user_pref_to_no_validator,
    'domain_invites_set_invite_new_user_pref_to_yes': EventTypeArg._domain_invites_set_invite_new_user_pref_to_yes_validator,
    'domain_verification_add_domain_fail': EventTypeArg._domain_verification_add_domain_fail_validator,
    'domain_verification_add_domain_success': EventTypeArg._domain_verification_add_domain_success_validator,
    'domain_verification_remove_domain': EventTypeArg._domain_verification_remove_domain_validator,
    'enabled_domain_invites': EventTypeArg._enabled_domain_invites_validator,
    'apply_naming_convention': EventTypeArg._apply_naming_convention_validator,
    'create_folder': EventTypeArg._create_folder_validator,
    'file_add': EventTypeArg._file_add_validator,
    'file_copy': EventTypeArg._file_copy_validator,
    'file_delete': EventTypeArg._file_delete_validator,
    'file_download': EventTypeArg._file_download_validator,
    'file_edit': EventTypeArg._file_edit_validator,
    'file_get_copy_reference': EventTypeArg._file_get_copy_reference_validator,
    'file_locking_lock_status_changed': EventTypeArg._file_locking_lock_status_changed_validator,
    'file_move': EventTypeArg._file_move_validator,
    'file_permanently_delete': EventTypeArg._file_permanently_delete_validator,
    'file_preview': EventTypeArg._file_preview_validator,
    'file_rename': EventTypeArg._file_rename_validator,
    'file_restore': EventTypeArg._file_restore_validator,
    'file_revert': EventTypeArg._file_revert_validator,
    'file_rollback_changes': EventTypeArg._file_rollback_changes_validator,
    'file_save_copy_reference': EventTypeArg._file_save_copy_reference_validator,
    'folder_overview_description_changed': EventTypeArg._folder_overview_description_changed_validator,
    'folder_overview_item_pinned': EventTypeArg._folder_overview_item_pinned_validator,
    'folder_overview_item_unpinned': EventTypeArg._folder_overview_item_unpinned_validator,
    'object_label_added': EventTypeArg._object_label_added_validator,
    'object_label_removed': EventTypeArg._object_label_removed_validator,
    'object_label_updated_value': EventTypeArg._object_label_updated_value_validator,
    'organize_folder_with_tidy': EventTypeArg._organize_folder_with_tidy_validator,
    'rewind_folder': EventTypeArg._rewind_folder_validator,
    'undo_naming_convention': EventTypeArg._undo_naming_convention_validator,
    'undo_organize_folder_with_tidy': EventTypeArg._undo_organize_folder_with_tidy_validator,
    'user_tags_added': EventTypeArg._user_tags_added_validator,
    'user_tags_removed': EventTypeArg._user_tags_removed_validator,
    'email_ingest_receive_file': EventTypeArg._email_ingest_receive_file_validator,
    'file_request_change': EventTypeArg._file_request_change_validator,
    'file_request_close': EventTypeArg._file_request_close_validator,
    'file_request_create': EventTypeArg._file_request_create_validator,
    'file_request_delete': EventTypeArg._file_request_delete_validator,
    'file_request_receive_file': EventTypeArg._file_request_receive_file_validator,
    'group_add_external_id': EventTypeArg._group_add_external_id_validator,
    'group_add_member': EventTypeArg._group_add_member_validator,
    'group_change_external_id': EventTypeArg._group_change_external_id_validator,
    'group_change_management_type': EventTypeArg._group_change_management_type_validator,
    'group_change_member_role': EventTypeArg._group_change_member_role_validator,
    'group_create': EventTypeArg._group_create_validator,
    'group_delete': EventTypeArg._group_delete_validator,
    'group_description_updated': EventTypeArg._group_description_updated_validator,
    'group_join_policy_updated': EventTypeArg._group_join_policy_updated_validator,
    'group_moved': EventTypeArg._group_moved_validator,
    'group_remove_external_id': EventTypeArg._group_remove_external_id_validator,
    'group_remove_member': EventTypeArg._group_remove_member_validator,
    'group_rename': EventTypeArg._group_rename_validator,
    'account_lock_or_unlocked': EventTypeArg._account_lock_or_unlocked_validator,
    'emm_error': EventTypeArg._emm_error_validator,
    'guest_admin_signed_in_via_trusted_teams': EventTypeArg._guest_admin_signed_in_via_trusted_teams_validator,
    'guest_admin_signed_out_via_trusted_teams': EventTypeArg._guest_admin_signed_out_via_trusted_teams_validator,
    'login_fail': EventTypeArg._login_fail_validator,
    'login_success': EventTypeArg._login_success_validator,
    'logout': EventTypeArg._logout_validator,
    'reseller_support_session_end': EventTypeArg._reseller_support_session_end_validator,
    'reseller_support_session_start': EventTypeArg._reseller_support_session_start_validator,
    'sign_in_as_session_end': EventTypeArg._sign_in_as_session_end_validator,
    'sign_in_as_session_start': EventTypeArg._sign_in_as_session_start_validator,
    'sso_error': EventTypeArg._sso_error_validator,
    'create_team_invite_link': EventTypeArg._create_team_invite_link_validator,
    'delete_team_invite_link': EventTypeArg._delete_team_invite_link_validator,
    'member_add_external_id': EventTypeArg._member_add_external_id_validator,
    'member_add_name': EventTypeArg._member_add_name_validator,
    'member_change_admin_role': EventTypeArg._member_change_admin_role_validator,
    'member_change_email': EventTypeArg._member_change_email_validator,
    'member_change_external_id': EventTypeArg._member_change_external_id_validator,
    'member_change_membership_type': EventTypeArg._member_change_membership_type_validator,
    'member_change_name': EventTypeArg._member_change_name_validator,
    'member_change_reseller_role': EventTypeArg._member_change_reseller_role_validator,
    'member_change_status': EventTypeArg._member_change_status_validator,
    'member_delete_manual_contacts': EventTypeArg._member_delete_manual_contacts_validator,
    'member_delete_profile_photo': EventTypeArg._member_delete_profile_photo_validator,
    'member_permanently_delete_account_contents': EventTypeArg._member_permanently_delete_account_contents_validator,
    'member_remove_external_id': EventTypeArg._member_remove_external_id_validator,
    'member_set_profile_photo': EventTypeArg._member_set_profile_photo_validator,
    'member_space_limits_add_custom_quota': EventTypeArg._member_space_limits_add_custom_quota_validator,
    'member_space_limits_change_custom_quota': EventTypeArg._member_space_limits_change_custom_quota_validator,
    'member_space_limits_change_status': EventTypeArg._member_space_limits_change_status_validator,
    'member_space_limits_remove_custom_quota': EventTypeArg._member_space_limits_remove_custom_quota_validator,
    'member_suggest': EventTypeArg._member_suggest_validator,
    'member_transfer_account_contents': EventTypeArg._member_transfer_account_contents_validator,
    'pending_secondary_email_added': EventTypeArg._pending_secondary_email_added_validator,
    'secondary_email_deleted': EventTypeArg._secondary_email_deleted_validator,
    'secondary_email_verified': EventTypeArg._secondary_email_verified_validator,
    'secondary_mails_policy_changed': EventTypeArg._secondary_mails_policy_changed_validator,
    'binder_add_page': EventTypeArg._binder_add_page_validator,
    'binder_add_section': EventTypeArg._binder_add_section_validator,
    'binder_remove_page': EventTypeArg._binder_remove_page_validator,
    'binder_remove_section': EventTypeArg._binder_remove_section_validator,
    'binder_rename_page': EventTypeArg._binder_rename_page_validator,
    'binder_rename_section': EventTypeArg._binder_rename_section_validator,
    'binder_reorder_page': EventTypeArg._binder_reorder_page_validator,
    'binder_reorder_section': EventTypeArg._binder_reorder_section_validator,
    'paper_content_add_member': EventTypeArg._paper_content_add_member_validator,
    'paper_content_add_to_folder': EventTypeArg._paper_content_add_to_folder_validator,
    'paper_content_archive': EventTypeArg._paper_content_archive_validator,
    'paper_content_create': EventTypeArg._paper_content_create_validator,
    'paper_content_permanently_delete': EventTypeArg._paper_content_permanently_delete_validator,
    'paper_content_remove_from_folder': EventTypeArg._paper_content_remove_from_folder_validator,
    'paper_content_remove_member': EventTypeArg._paper_content_remove_member_validator,
    'paper_content_rename': EventTypeArg._paper_content_rename_validator,
    'paper_content_restore': EventTypeArg._paper_content_restore_validator,
    'paper_doc_add_comment': EventTypeArg._paper_doc_add_comment_validator,
    'paper_doc_change_member_role': EventTypeArg._paper_doc_change_member_role_validator,
    'paper_doc_change_sharing_policy': EventTypeArg._paper_doc_change_sharing_policy_validator,
    'paper_doc_change_subscription': EventTypeArg._paper_doc_change_subscription_validator,
    'paper_doc_deleted': EventTypeArg._paper_doc_deleted_validator,
    'paper_doc_delete_comment': EventTypeArg._paper_doc_delete_comment_validator,
    'paper_doc_download': EventTypeArg._paper_doc_download_validator,
    'paper_doc_edit': EventTypeArg._paper_doc_edit_validator,
    'paper_doc_edit_comment': EventTypeArg._paper_doc_edit_comment_validator,
    'paper_doc_followed': EventTypeArg._paper_doc_followed_validator,
    'paper_doc_mention': EventTypeArg._paper_doc_mention_validator,
    'paper_doc_ownership_changed': EventTypeArg._paper_doc_ownership_changed_validator,
    'paper_doc_request_access': EventTypeArg._paper_doc_request_access_validator,
    'paper_doc_resolve_comment': EventTypeArg._paper_doc_resolve_comment_validator,
    'paper_doc_revert': EventTypeArg._paper_doc_revert_validator,
    'paper_doc_slack_share': EventTypeArg._paper_doc_slack_share_validator,
    'paper_doc_team_invite': EventTypeArg._paper_doc_team_invite_validator,
    'paper_doc_trashed': EventTypeArg._paper_doc_trashed_validator,
    'paper_doc_unresolve_comment': EventTypeArg._paper_doc_unresolve_comment_validator,
    'paper_doc_untrashed': EventTypeArg._paper_doc_untrashed_validator,
    'paper_doc_view': EventTypeArg._paper_doc_view_validator,
    'paper_external_view_allow': EventTypeArg._paper_external_view_allow_validator,
    'paper_external_view_default_team': EventTypeArg._paper_external_view_default_team_validator,
    'paper_external_view_forbid': EventTypeArg._paper_external_view_forbid_validator,
    'paper_folder_change_subscription': EventTypeArg._paper_folder_change_subscription_validator,
    'paper_folder_deleted': EventTypeArg._paper_folder_deleted_validator,
    'paper_folder_followed': EventTypeArg._paper_folder_followed_validator,
    'paper_folder_team_invite': EventTypeArg._paper_folder_team_invite_validator,
    'paper_published_link_change_permission': EventTypeArg._paper_published_link_change_permission_validator,
    'paper_published_link_create': EventTypeArg._paper_published_link_create_validator,
    'paper_published_link_disabled': EventTypeArg._paper_published_link_disabled_validator,
    'paper_published_link_view': EventTypeArg._paper_published_link_view_validator,
    'password_change': EventTypeArg._password_change_validator,
    'password_reset': EventTypeArg._password_reset_validator,
    'password_reset_all': EventTypeArg._password_reset_all_validator,
    'classification_create_report': EventTypeArg._classification_create_report_validator,
    'classification_create_report_fail': EventTypeArg._classification_create_report_fail_validator,
    'emm_create_exceptions_report': EventTypeArg._emm_create_exceptions_report_validator,
    'emm_create_usage_report': EventTypeArg._emm_create_usage_report_validator,
    'export_members_report': EventTypeArg._export_members_report_validator,
    'export_members_report_fail': EventTypeArg._export_members_report_fail_validator,
    'external_sharing_create_report': EventTypeArg._external_sharing_create_report_validator,
    'external_sharing_report_failed': EventTypeArg._external_sharing_report_failed_validator,
    'no_expiration_link_gen_create_report': EventTypeArg._no_expiration_link_gen_create_report_validator,
    'no_expiration_link_gen_report_failed': EventTypeArg._no_expiration_link_gen_report_failed_validator,
    'no_password_link_gen_create_report': EventTypeArg._no_password_link_gen_create_report_validator,
    'no_password_link_gen_report_failed': EventTypeArg._no_password_link_gen_report_failed_validator,
    'no_password_link_view_create_report': EventTypeArg._no_password_link_view_create_report_validator,
    'no_password_link_view_report_failed': EventTypeArg._no_password_link_view_report_failed_validator,
    'outdated_link_view_create_report': EventTypeArg._outdated_link_view_create_report_validator,
    'outdated_link_view_report_failed': EventTypeArg._outdated_link_view_report_failed_validator,
    'paper_admin_export_start': EventTypeArg._paper_admin_export_start_validator,
    'smart_sync_create_admin_privilege_report': EventTypeArg._smart_sync_create_admin_privilege_report_validator,
    'team_activity_create_report': EventTypeArg._team_activity_create_report_validator,
    'team_activity_create_report_fail': EventTypeArg._team_activity_create_report_fail_validator,
    'collection_share': EventTypeArg._collection_share_validator,
    'file_transfers_file_add': EventTypeArg._file_transfers_file_add_validator,
    'file_transfers_transfer_delete': EventTypeArg._file_transfers_transfer_delete_validator,
    'file_transfers_transfer_download': EventTypeArg._file_transfers_transfer_download_validator,
    'file_transfers_transfer_send': EventTypeArg._file_transfers_transfer_send_validator,
    'file_transfers_transfer_view': EventTypeArg._file_transfers_transfer_view_validator,
    'note_acl_invite_only': EventTypeArg._note_acl_invite_only_validator,
    'note_acl_link': EventTypeArg._note_acl_link_validator,
    'note_acl_team_link': EventTypeArg._note_acl_team_link_validator,
    'note_shared': EventTypeArg._note_shared_validator,
    'note_share_receive': EventTypeArg._note_share_receive_validator,
    'open_note_shared': EventTypeArg._open_note_shared_validator,
    'sf_add_group': EventTypeArg._sf_add_group_validator,
    'sf_allow_non_members_to_view_shared_links': EventTypeArg._sf_allow_non_members_to_view_shared_links_validator,
    'sf_external_invite_warn': EventTypeArg._sf_external_invite_warn_validator,
    'sf_fb_invite': EventTypeArg._sf_fb_invite_validator,
    'sf_fb_invite_change_role': EventTypeArg._sf_fb_invite_change_role_validator,
    'sf_fb_uninvite': EventTypeArg._sf_fb_uninvite_validator,
    'sf_invite_group': EventTypeArg._sf_invite_group_validator,
    'sf_team_grant_access': EventTypeArg._sf_team_grant_access_validator,
    'sf_team_invite': EventTypeArg._sf_team_invite_validator,
    'sf_team_invite_change_role': EventTypeArg._sf_team_invite_change_role_validator,
    'sf_team_join': EventTypeArg._sf_team_join_validator,
    'sf_team_join_from_oob_link': EventTypeArg._sf_team_join_from_oob_link_validator,
    'sf_team_uninvite': EventTypeArg._sf_team_uninvite_validator,
    'shared_content_add_invitees': EventTypeArg._shared_content_add_invitees_validator,
    'shared_content_add_link_expiry': EventTypeArg._shared_content_add_link_expiry_validator,
    'shared_content_add_link_password': EventTypeArg._shared_content_add_link_password_validator,
    'shared_content_add_member': EventTypeArg._shared_content_add_member_validator,
    'shared_content_change_downloads_policy': EventTypeArg._shared_content_change_downloads_policy_validator,
    'shared_content_change_invitee_role': EventTypeArg._shared_content_change_invitee_role_validator,
    'shared_content_change_link_audience': EventTypeArg._shared_content_change_link_audience_validator,
    'shared_content_change_link_expiry': EventTypeArg._shared_content_change_link_expiry_validator,
    'shared_content_change_link_password': EventTypeArg._shared_content_change_link_password_validator,
    'shared_content_change_member_role': EventTypeArg._shared_content_change_member_role_validator,
    'shared_content_change_viewer_info_policy': EventTypeArg._shared_content_change_viewer_info_policy_validator,
    'shared_content_claim_invitation': EventTypeArg._shared_content_claim_invitation_validator,
    'shared_content_copy': EventTypeArg._shared_content_copy_validator,
    'shared_content_download': EventTypeArg._shared_content_download_validator,
    'shared_content_relinquish_membership': EventTypeArg._shared_content_relinquish_membership_validator,
    'shared_content_remove_invitees': EventTypeArg._shared_content_remove_invitees_validator,
    'shared_content_remove_link_expiry': EventTypeArg._shared_content_remove_link_expiry_validator,
    'shared_content_remove_link_password': EventTypeArg._shared_content_remove_link_password_validator,
    'shared_content_remove_member': EventTypeArg._shared_content_remove_member_validator,
    'shared_content_request_access': EventTypeArg._shared_content_request_access_validator,
    'shared_content_restore_invitees': EventTypeArg._shared_content_restore_invitees_validator,
    'shared_content_restore_member': EventTypeArg._shared_content_restore_member_validator,
    'shared_content_unshare': EventTypeArg._shared_content_unshare_validator,
    'shared_content_view': EventTypeArg._shared_content_view_validator,
    'shared_folder_change_link_policy': EventTypeArg._shared_folder_change_link_policy_validator,
    'shared_folder_change_members_inheritance_policy': EventTypeArg._shared_folder_change_members_inheritance_policy_validator,
    'shared_folder_change_members_management_policy': EventTypeArg._shared_folder_change_members_management_policy_validator,
    'shared_folder_change_members_policy': EventTypeArg._shared_folder_change_members_policy_validator,
    'shared_folder_create': EventTypeArg._shared_folder_create_validator,
    'shared_folder_decline_invitation': EventTypeArg._shared_folder_decline_invitation_validator,
    'shared_folder_mount': EventTypeArg._shared_folder_mount_validator,
    'shared_folder_nest': EventTypeArg._shared_folder_nest_validator,
    'shared_folder_transfer_ownership': EventTypeArg._shared_folder_transfer_ownership_validator,
    'shared_folder_unmount': EventTypeArg._shared_folder_unmount_validator,
    'shared_link_add_expiry': EventTypeArg._shared_link_add_expiry_validator,
    'shared_link_change_expiry': EventTypeArg._shared_link_change_expiry_validator,
    'shared_link_change_visibility': EventTypeArg._shared_link_change_visibility_validator,
    'shared_link_copy': EventTypeArg._shared_link_copy_validator,
    'shared_link_create': EventTypeArg._shared_link_create_validator,
    'shared_link_disable': EventTypeArg._shared_link_disable_validator,
    'shared_link_download': EventTypeArg._shared_link_download_validator,
    'shared_link_remove_expiry': EventTypeArg._shared_link_remove_expiry_validator,
    'shared_link_settings_add_expiration': EventTypeArg._shared_link_settings_add_expiration_validator,
    'shared_link_settings_add_password': EventTypeArg._shared_link_settings_add_password_validator,
    'shared_link_settings_allow_download_disabled': EventTypeArg._shared_link_settings_allow_download_disabled_validator,
    'shared_link_settings_allow_download_enabled': EventTypeArg._shared_link_settings_allow_download_enabled_validator,
    'shared_link_settings_change_audience': EventTypeArg._shared_link_settings_change_audience_validator,
    'shared_link_settings_change_expiration': EventTypeArg._shared_link_settings_change_expiration_validator,
    'shared_link_settings_change_password': EventTypeArg._shared_link_settings_change_password_validator,
    'shared_link_settings_remove_expiration': EventTypeArg._shared_link_settings_remove_expiration_validator,
    'shared_link_settings_remove_password': EventTypeArg._shared_link_settings_remove_password_validator,
    'shared_link_share': EventTypeArg._shared_link_share_validator,
    'shared_link_view': EventTypeArg._shared_link_view_validator,
    'shared_note_opened': EventTypeArg._shared_note_opened_validator,
    'shmodel_disable_downloads': EventTypeArg._shmodel_disable_downloads_validator,
    'shmodel_enable_downloads': EventTypeArg._shmodel_enable_downloads_validator,
    'shmodel_group_share': EventTypeArg._shmodel_group_share_validator,
    'showcase_access_granted': EventTypeArg._showcase_access_granted_validator,
    'showcase_add_member': EventTypeArg._showcase_add_member_validator,
    'showcase_archived': EventTypeArg._showcase_archived_validator,
    'showcase_created': EventTypeArg._showcase_created_validator,
    'showcase_delete_comment': EventTypeArg._showcase_delete_comment_validator,
    'showcase_edited': EventTypeArg._showcase_edited_validator,
    'showcase_edit_comment': EventTypeArg._showcase_edit_comment_validator,
    'showcase_file_added': EventTypeArg._showcase_file_added_validator,
    'showcase_file_download': EventTypeArg._showcase_file_download_validator,
    'showcase_file_removed': EventTypeArg._showcase_file_removed_validator,
    'showcase_file_view': EventTypeArg._showcase_file_view_validator,
    'showcase_permanently_deleted': EventTypeArg._showcase_permanently_deleted_validator,
    'showcase_post_comment': EventTypeArg._showcase_post_comment_validator,
    'showcase_remove_member': EventTypeArg._showcase_remove_member_validator,
    'showcase_renamed': EventTypeArg._showcase_renamed_validator,
    'showcase_request_access': EventTypeArg._showcase_request_access_validator,
    'showcase_resolve_comment': EventTypeArg._showcase_resolve_comment_validator,
    'showcase_restored': EventTypeArg._showcase_restored_validator,
    'showcase_trashed': EventTypeArg._showcase_trashed_validator,
    'showcase_trashed_deprecated': EventTypeArg._showcase_trashed_deprecated_validator,
    'showcase_unresolve_comment': EventTypeArg._showcase_unresolve_comment_validator,
    'showcase_untrashed': EventTypeArg._showcase_untrashed_validator,
    'showcase_untrashed_deprecated': EventTypeArg._showcase_untrashed_deprecated_validator,
    'showcase_view': EventTypeArg._showcase_view_validator,
    'sso_add_cert': EventTypeArg._sso_add_cert_validator,
    'sso_add_login_url': EventTypeArg._sso_add_login_url_validator,
    'sso_add_logout_url': EventTypeArg._sso_add_logout_url_validator,
    'sso_change_cert': EventTypeArg._sso_change_cert_validator,
    'sso_change_login_url': EventTypeArg._sso_change_login_url_validator,
    'sso_change_logout_url': EventTypeArg._sso_change_logout_url_validator,
    'sso_change_saml_identity_mode': EventTypeArg._sso_change_saml_identity_mode_validator,
    'sso_remove_cert': EventTypeArg._sso_remove_cert_validator,
    'sso_remove_login_url': EventTypeArg._sso_remove_login_url_validator,
    'sso_remove_logout_url': EventTypeArg._sso_remove_logout_url_validator,
    'team_folder_change_status': EventTypeArg._team_folder_change_status_validator,
    'team_folder_create': EventTypeArg._team_folder_create_validator,
    'team_folder_downgrade': EventTypeArg._team_folder_downgrade_validator,
    'team_folder_permanently_delete': EventTypeArg._team_folder_permanently_delete_validator,
    'team_folder_rename': EventTypeArg._team_folder_rename_validator,
    'team_selective_sync_settings_changed': EventTypeArg._team_selective_sync_settings_changed_validator,
    'account_capture_change_policy': EventTypeArg._account_capture_change_policy_validator,
    'admin_email_reminders_changed': EventTypeArg._admin_email_reminders_changed_validator,
    'allow_download_disabled': EventTypeArg._allow_download_disabled_validator,
    'allow_download_enabled': EventTypeArg._allow_download_enabled_validator,
    'app_permissions_changed': EventTypeArg._app_permissions_changed_validator,
    'camera_uploads_policy_changed': EventTypeArg._camera_uploads_policy_changed_validator,
    'capture_transcript_policy_changed': EventTypeArg._capture_transcript_policy_changed_validator,
    'classification_change_policy': EventTypeArg._classification_change_policy_validator,
    'computer_backup_policy_changed': EventTypeArg._computer_backup_policy_changed_validator,
    'content_administration_policy_changed': EventTypeArg._content_administration_policy_changed_validator,
    'data_placement_restriction_change_policy': EventTypeArg._data_placement_restriction_change_policy_validator,
    'data_placement_restriction_satisfy_policy': EventTypeArg._data_placement_restriction_satisfy_policy_validator,
    'device_approvals_add_exception': EventTypeArg._device_approvals_add_exception_validator,
    'device_approvals_change_desktop_policy': EventTypeArg._device_approvals_change_desktop_policy_validator,
    'device_approvals_change_mobile_policy': EventTypeArg._device_approvals_change_mobile_policy_validator,
    'device_approvals_change_overage_action': EventTypeArg._device_approvals_change_overage_action_validator,
    'device_approvals_change_unlink_action': EventTypeArg._device_approvals_change_unlink_action_validator,
    'device_approvals_remove_exception': EventTypeArg._device_approvals_remove_exception_validator,
    'directory_restrictions_add_members': EventTypeArg._directory_restrictions_add_members_validator,
    'directory_restrictions_remove_members': EventTypeArg._directory_restrictions_remove_members_validator,
    'dropbox_passwords_policy_changed': EventTypeArg._dropbox_passwords_policy_changed_validator,
    'email_ingest_policy_changed': EventTypeArg._email_ingest_policy_changed_validator,
    'emm_add_exception': EventTypeArg._emm_add_exception_validator,
    'emm_change_policy': EventTypeArg._emm_change_policy_validator,
    'emm_remove_exception': EventTypeArg._emm_remove_exception_validator,
    'extended_version_history_change_policy': EventTypeArg._extended_version_history_change_policy_validator,
    'external_drive_backup_policy_changed': EventTypeArg._external_drive_backup_policy_changed_validator,
    'file_comments_change_policy': EventTypeArg._file_comments_change_policy_validator,
    'file_locking_policy_changed': EventTypeArg._file_locking_policy_changed_validator,
    'file_provider_migration_policy_changed': EventTypeArg._file_provider_migration_policy_changed_validator,
    'file_requests_change_policy': EventTypeArg._file_requests_change_policy_validator,
    'file_requests_emails_enabled': EventTypeArg._file_requests_emails_enabled_validator,
    'file_requests_emails_restricted_to_team_only': EventTypeArg._file_requests_emails_restricted_to_team_only_validator,
    'file_transfers_policy_changed': EventTypeArg._file_transfers_policy_changed_validator,
    'folder_link_restriction_policy_changed': EventTypeArg._folder_link_restriction_policy_changed_validator,
    'google_sso_change_policy': EventTypeArg._google_sso_change_policy_validator,
    'group_user_management_change_policy': EventTypeArg._group_user_management_change_policy_validator,
    'integration_policy_changed': EventTypeArg._integration_policy_changed_validator,
    'invite_acceptance_email_policy_changed': EventTypeArg._invite_acceptance_email_policy_changed_validator,
    'member_requests_change_policy': EventTypeArg._member_requests_change_policy_validator,
    'member_send_invite_policy_changed': EventTypeArg._member_send_invite_policy_changed_validator,
    'member_space_limits_add_exception': EventTypeArg._member_space_limits_add_exception_validator,
    'member_space_limits_change_caps_type_policy': EventTypeArg._member_space_limits_change_caps_type_policy_validator,
    'member_space_limits_change_policy': EventTypeArg._member_space_limits_change_policy_validator,
    'member_space_limits_remove_exception': EventTypeArg._member_space_limits_remove_exception_validator,
    'member_suggestions_change_policy': EventTypeArg._member_suggestions_change_policy_validator,
    'microsoft_office_addin_change_policy': EventTypeArg._microsoft_office_addin_change_policy_validator,
    'network_control_change_policy': EventTypeArg._network_control_change_policy_validator,
    'paper_change_deployment_policy': EventTypeArg._paper_change_deployment_policy_validator,
    'paper_change_member_link_policy': EventTypeArg._paper_change_member_link_policy_validator,
    'paper_change_member_policy': EventTypeArg._paper_change_member_policy_validator,
    'paper_change_policy': EventTypeArg._paper_change_policy_validator,
    'paper_default_folder_policy_changed': EventTypeArg._paper_default_folder_policy_changed_validator,
    'paper_desktop_policy_changed': EventTypeArg._paper_desktop_policy_changed_validator,
    'paper_enabled_users_group_addition': EventTypeArg._paper_enabled_users_group_addition_validator,
    'paper_enabled_users_group_removal': EventTypeArg._paper_enabled_users_group_removal_validator,
    'password_strength_requirements_change_policy': EventTypeArg._password_strength_requirements_change_policy_validator,
    'permanent_delete_change_policy': EventTypeArg._permanent_delete_change_policy_validator,
    'reseller_support_change_policy': EventTypeArg._reseller_support_change_policy_validator,
    'rewind_policy_changed': EventTypeArg._rewind_policy_changed_validator,
    'send_for_signature_policy_changed': EventTypeArg._send_for_signature_policy_changed_validator,
    'sharing_change_folder_join_policy': EventTypeArg._sharing_change_folder_join_policy_validator,
    'sharing_change_link_allow_change_expiration_policy': EventTypeArg._sharing_change_link_allow_change_expiration_policy_validator,
    'sharing_change_link_default_expiration_policy': EventTypeArg._sharing_change_link_default_expiration_policy_validator,
    'sharing_change_link_enforce_password_policy': EventTypeArg._sharing_change_link_enforce_password_policy_validator,
    'sharing_change_link_policy': EventTypeArg._sharing_change_link_policy_validator,
    'sharing_change_member_policy': EventTypeArg._sharing_change_member_policy_validator,
    'showcase_change_download_policy': EventTypeArg._showcase_change_download_policy_validator,
    'showcase_change_enabled_policy': EventTypeArg._showcase_change_enabled_policy_validator,
    'showcase_change_external_sharing_policy': EventTypeArg._showcase_change_external_sharing_policy_validator,
    'smarter_smart_sync_policy_changed': EventTypeArg._smarter_smart_sync_policy_changed_validator,
    'smart_sync_change_policy': EventTypeArg._smart_sync_change_policy_validator,
    'smart_sync_not_opt_out': EventTypeArg._smart_sync_not_opt_out_validator,
    'smart_sync_opt_out': EventTypeArg._smart_sync_opt_out_validator,
    'sso_change_policy': EventTypeArg._sso_change_policy_validator,
    'team_branding_policy_changed': EventTypeArg._team_branding_policy_changed_validator,
    'team_extensions_policy_changed': EventTypeArg._team_extensions_policy_changed_validator,
    'team_selective_sync_policy_changed': EventTypeArg._team_selective_sync_policy_changed_validator,
    'team_sharing_whitelist_subjects_changed': EventTypeArg._team_sharing_whitelist_subjects_changed_validator,
    'tfa_add_exception': EventTypeArg._tfa_add_exception_validator,
    'tfa_change_policy': EventTypeArg._tfa_change_policy_validator,
    'tfa_remove_exception': EventTypeArg._tfa_remove_exception_validator,
    'two_account_change_policy': EventTypeArg._two_account_change_policy_validator,
    'viewer_info_policy_changed': EventTypeArg._viewer_info_policy_changed_validator,
    'watermarking_policy_changed': EventTypeArg._watermarking_policy_changed_validator,
    'web_sessions_change_active_session_limit': EventTypeArg._web_sessions_change_active_session_limit_validator,
    'web_sessions_change_fixed_length_policy': EventTypeArg._web_sessions_change_fixed_length_policy_validator,
    'web_sessions_change_idle_length_policy': EventTypeArg._web_sessions_change_idle_length_policy_validator,
    'data_residency_migration_request_successful': EventTypeArg._data_residency_migration_request_successful_validator,
    'data_residency_migration_request_unsuccessful': EventTypeArg._data_residency_migration_request_unsuccessful_validator,
    'team_merge_from': EventTypeArg._team_merge_from_validator,
    'team_merge_to': EventTypeArg._team_merge_to_validator,
    'team_profile_add_background': EventTypeArg._team_profile_add_background_validator,
    'team_profile_add_logo': EventTypeArg._team_profile_add_logo_validator,
    'team_profile_change_background': EventTypeArg._team_profile_change_background_validator,
    'team_profile_change_default_language': EventTypeArg._team_profile_change_default_language_validator,
    'team_profile_change_logo': EventTypeArg._team_profile_change_logo_validator,
    'team_profile_change_name': EventTypeArg._team_profile_change_name_validator,
    'team_profile_remove_background': EventTypeArg._team_profile_remove_background_validator,
    'team_profile_remove_logo': EventTypeArg._team_profile_remove_logo_validator,
    'tfa_add_backup_phone': EventTypeArg._tfa_add_backup_phone_validator,
    'tfa_add_security_key': EventTypeArg._tfa_add_security_key_validator,
    'tfa_change_backup_phone': EventTypeArg._tfa_change_backup_phone_validator,
    'tfa_change_status': EventTypeArg._tfa_change_status_validator,
    'tfa_remove_backup_phone': EventTypeArg._tfa_remove_backup_phone_validator,
    'tfa_remove_security_key': EventTypeArg._tfa_remove_security_key_validator,
    'tfa_reset': EventTypeArg._tfa_reset_validator,
    'changed_enterprise_admin_role': EventTypeArg._changed_enterprise_admin_role_validator,
    'changed_enterprise_connected_team_status': EventTypeArg._changed_enterprise_connected_team_status_validator,
    'ended_enterprise_admin_session': EventTypeArg._ended_enterprise_admin_session_validator,
    'ended_enterprise_admin_session_deprecated': EventTypeArg._ended_enterprise_admin_session_deprecated_validator,
    'enterprise_settings_locking': EventTypeArg._enterprise_settings_locking_validator,
    'guest_admin_change_status': EventTypeArg._guest_admin_change_status_validator,
    'started_enterprise_admin_session': EventTypeArg._started_enterprise_admin_session_validator,
    'team_merge_request_accepted': EventTypeArg._team_merge_request_accepted_validator,
    'team_merge_request_accepted_shown_to_primary_team': EventTypeArg._team_merge_request_accepted_shown_to_primary_team_validator,
    'team_merge_request_accepted_shown_to_secondary_team': EventTypeArg._team_merge_request_accepted_shown_to_secondary_team_validator,
    'team_merge_request_auto_canceled': EventTypeArg._team_merge_request_auto_canceled_validator,
    'team_merge_request_canceled': EventTypeArg._team_merge_request_canceled_validator,
    'team_merge_request_canceled_shown_to_primary_team': EventTypeArg._team_merge_request_canceled_shown_to_primary_team_validator,
    'team_merge_request_canceled_shown_to_secondary_team': EventTypeArg._team_merge_request_canceled_shown_to_secondary_team_validator,
    'team_merge_request_expired': EventTypeArg._team_merge_request_expired_validator,
    'team_merge_request_expired_shown_to_primary_team': EventTypeArg._team_merge_request_expired_shown_to_primary_team_validator,
    'team_merge_request_expired_shown_to_secondary_team': EventTypeArg._team_merge_request_expired_shown_to_secondary_team_validator,
    'team_merge_request_rejected_shown_to_primary_team': EventTypeArg._team_merge_request_rejected_shown_to_primary_team_validator,
    'team_merge_request_rejected_shown_to_secondary_team': EventTypeArg._team_merge_request_rejected_shown_to_secondary_team_validator,
    'team_merge_request_reminder': EventTypeArg._team_merge_request_reminder_validator,
    'team_merge_request_reminder_shown_to_primary_team': EventTypeArg._team_merge_request_reminder_shown_to_primary_team_validator,
    'team_merge_request_reminder_shown_to_secondary_team': EventTypeArg._team_merge_request_reminder_shown_to_secondary_team_validator,
    'team_merge_request_revoked': EventTypeArg._team_merge_request_revoked_validator,
    'team_merge_request_sent_shown_to_primary_team': EventTypeArg._team_merge_request_sent_shown_to_primary_team_validator,
    'team_merge_request_sent_shown_to_secondary_team': EventTypeArg._team_merge_request_sent_shown_to_secondary_team_validator,
    'other': EventTypeArg._other_validator,
}

EventTypeArg.admin_alerting_alert_state_changed = EventTypeArg('admin_alerting_alert_state_changed')
EventTypeArg.admin_alerting_changed_alert_config = EventTypeArg('admin_alerting_changed_alert_config')
EventTypeArg.admin_alerting_triggered_alert = EventTypeArg('admin_alerting_triggered_alert')
EventTypeArg.app_blocked_by_permissions = EventTypeArg('app_blocked_by_permissions')
EventTypeArg.app_link_team = EventTypeArg('app_link_team')
EventTypeArg.app_link_user = EventTypeArg('app_link_user')
EventTypeArg.app_unlink_team = EventTypeArg('app_unlink_team')
EventTypeArg.app_unlink_user = EventTypeArg('app_unlink_user')
EventTypeArg.integration_connected = EventTypeArg('integration_connected')
EventTypeArg.integration_disconnected = EventTypeArg('integration_disconnected')
EventTypeArg.file_add_comment = EventTypeArg('file_add_comment')
EventTypeArg.file_change_comment_subscription = EventTypeArg('file_change_comment_subscription')
EventTypeArg.file_delete_comment = EventTypeArg('file_delete_comment')
EventTypeArg.file_edit_comment = EventTypeArg('file_edit_comment')
EventTypeArg.file_like_comment = EventTypeArg('file_like_comment')
EventTypeArg.file_resolve_comment = EventTypeArg('file_resolve_comment')
EventTypeArg.file_unlike_comment = EventTypeArg('file_unlike_comment')
EventTypeArg.file_unresolve_comment = EventTypeArg('file_unresolve_comment')
EventTypeArg.governance_policy_add_folders = EventTypeArg('governance_policy_add_folders')
EventTypeArg.governance_policy_add_folder_failed = EventTypeArg('governance_policy_add_folder_failed')
EventTypeArg.governance_policy_content_disposed = EventTypeArg('governance_policy_content_disposed')
EventTypeArg.governance_policy_create = EventTypeArg('governance_policy_create')
EventTypeArg.governance_policy_delete = EventTypeArg('governance_policy_delete')
EventTypeArg.governance_policy_edit_details = EventTypeArg('governance_policy_edit_details')
EventTypeArg.governance_policy_edit_duration = EventTypeArg('governance_policy_edit_duration')
EventTypeArg.governance_policy_export_created = EventTypeArg('governance_policy_export_created')
EventTypeArg.governance_policy_export_removed = EventTypeArg('governance_policy_export_removed')
EventTypeArg.governance_policy_remove_folders = EventTypeArg('governance_policy_remove_folders')
EventTypeArg.governance_policy_report_created = EventTypeArg('governance_policy_report_created')
EventTypeArg.governance_policy_zip_part_downloaded = EventTypeArg('governance_policy_zip_part_downloaded')
EventTypeArg.legal_holds_activate_a_hold = EventTypeArg('legal_holds_activate_a_hold')
EventTypeArg.legal_holds_add_members = EventTypeArg('legal_holds_add_members')
EventTypeArg.legal_holds_change_hold_details = EventTypeArg('legal_holds_change_hold_details')
EventTypeArg.legal_holds_change_hold_name = EventTypeArg('legal_holds_change_hold_name')
EventTypeArg.legal_holds_export_a_hold = EventTypeArg('legal_holds_export_a_hold')
EventTypeArg.legal_holds_export_cancelled = EventTypeArg('legal_holds_export_cancelled')
EventTypeArg.legal_holds_export_downloaded = EventTypeArg('legal_holds_export_downloaded')
EventTypeArg.legal_holds_export_removed = EventTypeArg('legal_holds_export_removed')
EventTypeArg.legal_holds_release_a_hold = EventTypeArg('legal_holds_release_a_hold')
EventTypeArg.legal_holds_remove_members = EventTypeArg('legal_holds_remove_members')
EventTypeArg.legal_holds_report_a_hold = EventTypeArg('legal_holds_report_a_hold')
EventTypeArg.device_change_ip_desktop = EventTypeArg('device_change_ip_desktop')
EventTypeArg.device_change_ip_mobile = EventTypeArg('device_change_ip_mobile')
EventTypeArg.device_change_ip_web = EventTypeArg('device_change_ip_web')
EventTypeArg.device_delete_on_unlink_fail = EventTypeArg('device_delete_on_unlink_fail')
EventTypeArg.device_delete_on_unlink_success = EventTypeArg('device_delete_on_unlink_success')
EventTypeArg.device_link_fail = EventTypeArg('device_link_fail')
EventTypeArg.device_link_success = EventTypeArg('device_link_success')
EventTypeArg.device_management_disabled = EventTypeArg('device_management_disabled')
EventTypeArg.device_management_enabled = EventTypeArg('device_management_enabled')
EventTypeArg.device_sync_backup_status_changed = EventTypeArg('device_sync_backup_status_changed')
EventTypeArg.device_unlink = EventTypeArg('device_unlink')
EventTypeArg.dropbox_passwords_exported = EventTypeArg('dropbox_passwords_exported')
EventTypeArg.dropbox_passwords_new_device_enrolled = EventTypeArg('dropbox_passwords_new_device_enrolled')
EventTypeArg.emm_refresh_auth_token = EventTypeArg('emm_refresh_auth_token')
EventTypeArg.external_drive_backup_eligibility_status_checked = EventTypeArg('external_drive_backup_eligibility_status_checked')
EventTypeArg.external_drive_backup_status_changed = EventTypeArg('external_drive_backup_status_changed')
EventTypeArg.account_capture_change_availability = EventTypeArg('account_capture_change_availability')
EventTypeArg.account_capture_migrate_account = EventTypeArg('account_capture_migrate_account')
EventTypeArg.account_capture_notification_emails_sent = EventTypeArg('account_capture_notification_emails_sent')
EventTypeArg.account_capture_relinquish_account = EventTypeArg('account_capture_relinquish_account')
EventTypeArg.disabled_domain_invites = EventTypeArg('disabled_domain_invites')
EventTypeArg.domain_invites_approve_request_to_join_team = EventTypeArg('domain_invites_approve_request_to_join_team')
EventTypeArg.domain_invites_decline_request_to_join_team = EventTypeArg('domain_invites_decline_request_to_join_team')
EventTypeArg.domain_invites_email_existing_users = EventTypeArg('domain_invites_email_existing_users')
EventTypeArg.domain_invites_request_to_join_team = EventTypeArg('domain_invites_request_to_join_team')
EventTypeArg.domain_invites_set_invite_new_user_pref_to_no = EventTypeArg('domain_invites_set_invite_new_user_pref_to_no')
EventTypeArg.domain_invites_set_invite_new_user_pref_to_yes = EventTypeArg('domain_invites_set_invite_new_user_pref_to_yes')
EventTypeArg.domain_verification_add_domain_fail = EventTypeArg('domain_verification_add_domain_fail')
EventTypeArg.domain_verification_add_domain_success = EventTypeArg('domain_verification_add_domain_success')
EventTypeArg.domain_verification_remove_domain = EventTypeArg('domain_verification_remove_domain')
EventTypeArg.enabled_domain_invites = EventTypeArg('enabled_domain_invites')
EventTypeArg.apply_naming_convention = EventTypeArg('apply_naming_convention')
EventTypeArg.create_folder = EventTypeArg('create_folder')
EventTypeArg.file_add = EventTypeArg('file_add')
EventTypeArg.file_copy = EventTypeArg('file_copy')
EventTypeArg.file_delete = EventTypeArg('file_delete')
EventTypeArg.file_download = EventTypeArg('file_download')
EventTypeArg.file_edit = EventTypeArg('file_edit')
EventTypeArg.file_get_copy_reference = EventTypeArg('file_get_copy_reference')
EventTypeArg.file_locking_lock_status_changed = EventTypeArg('file_locking_lock_status_changed')
EventTypeArg.file_move = EventTypeArg('file_move')
EventTypeArg.file_permanently_delete = EventTypeArg('file_permanently_delete')
EventTypeArg.file_preview = EventTypeArg('file_preview')
EventTypeArg.file_rename = EventTypeArg('file_rename')
EventTypeArg.file_restore = EventTypeArg('file_restore')
EventTypeArg.file_revert = EventTypeArg('file_revert')
EventTypeArg.file_rollback_changes = EventTypeArg('file_rollback_changes')
EventTypeArg.file_save_copy_reference = EventTypeArg('file_save_copy_reference')
EventTypeArg.folder_overview_description_changed = EventTypeArg('folder_overview_description_changed')
EventTypeArg.folder_overview_item_pinned = EventTypeArg('folder_overview_item_pinned')
EventTypeArg.folder_overview_item_unpinned = EventTypeArg('folder_overview_item_unpinned')
EventTypeArg.object_label_added = EventTypeArg('object_label_added')
EventTypeArg.object_label_removed = EventTypeArg('object_label_removed')
EventTypeArg.object_label_updated_value = EventTypeArg('object_label_updated_value')
EventTypeArg.organize_folder_with_tidy = EventTypeArg('organize_folder_with_tidy')
EventTypeArg.rewind_folder = EventTypeArg('rewind_folder')
EventTypeArg.undo_naming_convention = EventTypeArg('undo_naming_convention')
EventTypeArg.undo_organize_folder_with_tidy = EventTypeArg('undo_organize_folder_with_tidy')
EventTypeArg.user_tags_added = EventTypeArg('user_tags_added')
EventTypeArg.user_tags_removed = EventTypeArg('user_tags_removed')
EventTypeArg.email_ingest_receive_file = EventTypeArg('email_ingest_receive_file')
EventTypeArg.file_request_change = EventTypeArg('file_request_change')
EventTypeArg.file_request_close = EventTypeArg('file_request_close')
EventTypeArg.file_request_create = EventTypeArg('file_request_create')
EventTypeArg.file_request_delete = EventTypeArg('file_request_delete')
EventTypeArg.file_request_receive_file = EventTypeArg('file_request_receive_file')
EventTypeArg.group_add_external_id = EventTypeArg('group_add_external_id')
EventTypeArg.group_add_member = EventTypeArg('group_add_member')
EventTypeArg.group_change_external_id = EventTypeArg('group_change_external_id')
EventTypeArg.group_change_management_type = EventTypeArg('group_change_management_type')
EventTypeArg.group_change_member_role = EventTypeArg('group_change_member_role')
EventTypeArg.group_create = EventTypeArg('group_create')
EventTypeArg.group_delete = EventTypeArg('group_delete')
EventTypeArg.group_description_updated = EventTypeArg('group_description_updated')
EventTypeArg.group_join_policy_updated = EventTypeArg('group_join_policy_updated')
EventTypeArg.group_moved = EventTypeArg('group_moved')
EventTypeArg.group_remove_external_id = EventTypeArg('group_remove_external_id')
EventTypeArg.group_remove_member = EventTypeArg('group_remove_member')
EventTypeArg.group_rename = EventTypeArg('group_rename')
EventTypeArg.account_lock_or_unlocked = EventTypeArg('account_lock_or_unlocked')
EventTypeArg.emm_error = EventTypeArg('emm_error')
EventTypeArg.guest_admin_signed_in_via_trusted_teams = EventTypeArg('guest_admin_signed_in_via_trusted_teams')
EventTypeArg.guest_admin_signed_out_via_trusted_teams = EventTypeArg('guest_admin_signed_out_via_trusted_teams')
EventTypeArg.login_fail = EventTypeArg('login_fail')
EventTypeArg.login_success = EventTypeArg('login_success')
EventTypeArg.logout = EventTypeArg('logout')
EventTypeArg.reseller_support_session_end = EventTypeArg('reseller_support_session_end')
EventTypeArg.reseller_support_session_start = EventTypeArg('reseller_support_session_start')
EventTypeArg.sign_in_as_session_end = EventTypeArg('sign_in_as_session_end')
EventTypeArg.sign_in_as_session_start = EventTypeArg('sign_in_as_session_start')
EventTypeArg.sso_error = EventTypeArg('sso_error')
EventTypeArg.create_team_invite_link = EventTypeArg('create_team_invite_link')
EventTypeArg.delete_team_invite_link = EventTypeArg('delete_team_invite_link')
EventTypeArg.member_add_external_id = EventTypeArg('member_add_external_id')
EventTypeArg.member_add_name = EventTypeArg('member_add_name')
EventTypeArg.member_change_admin_role = EventTypeArg('member_change_admin_role')
EventTypeArg.member_change_email = EventTypeArg('member_change_email')
EventTypeArg.member_change_external_id = EventTypeArg('member_change_external_id')
EventTypeArg.member_change_membership_type = EventTypeArg('member_change_membership_type')
EventTypeArg.member_change_name = EventTypeArg('member_change_name')
EventTypeArg.member_change_reseller_role = EventTypeArg('member_change_reseller_role')
EventTypeArg.member_change_status = EventTypeArg('member_change_status')
EventTypeArg.member_delete_manual_contacts = EventTypeArg('member_delete_manual_contacts')
EventTypeArg.member_delete_profile_photo = EventTypeArg('member_delete_profile_photo')
EventTypeArg.member_permanently_delete_account_contents = EventTypeArg('member_permanently_delete_account_contents')
EventTypeArg.member_remove_external_id = EventTypeArg('member_remove_external_id')
EventTypeArg.member_set_profile_photo = EventTypeArg('member_set_profile_photo')
EventTypeArg.member_space_limits_add_custom_quota = EventTypeArg('member_space_limits_add_custom_quota')
EventTypeArg.member_space_limits_change_custom_quota = EventTypeArg('member_space_limits_change_custom_quota')
EventTypeArg.member_space_limits_change_status = EventTypeArg('member_space_limits_change_status')
EventTypeArg.member_space_limits_remove_custom_quota = EventTypeArg('member_space_limits_remove_custom_quota')
EventTypeArg.member_suggest = EventTypeArg('member_suggest')
EventTypeArg.member_transfer_account_contents = EventTypeArg('member_transfer_account_contents')
EventTypeArg.pending_secondary_email_added = EventTypeArg('pending_secondary_email_added')
EventTypeArg.secondary_email_deleted = EventTypeArg('secondary_email_deleted')
EventTypeArg.secondary_email_verified = EventTypeArg('secondary_email_verified')
EventTypeArg.secondary_mails_policy_changed = EventTypeArg('secondary_mails_policy_changed')
EventTypeArg.binder_add_page = EventTypeArg('binder_add_page')
EventTypeArg.binder_add_section = EventTypeArg('binder_add_section')
EventTypeArg.binder_remove_page = EventTypeArg('binder_remove_page')
EventTypeArg.binder_remove_section = EventTypeArg('binder_remove_section')
EventTypeArg.binder_rename_page = EventTypeArg('binder_rename_page')
EventTypeArg.binder_rename_section = EventTypeArg('binder_rename_section')
EventTypeArg.binder_reorder_page = EventTypeArg('binder_reorder_page')
EventTypeArg.binder_reorder_section = EventTypeArg('binder_reorder_section')
EventTypeArg.paper_content_add_member = EventTypeArg('paper_content_add_member')
EventTypeArg.paper_content_add_to_folder = EventTypeArg('paper_content_add_to_folder')
EventTypeArg.paper_content_archive = EventTypeArg('paper_content_archive')
EventTypeArg.paper_content_create = EventTypeArg('paper_content_create')
EventTypeArg.paper_content_permanently_delete = EventTypeArg('paper_content_permanently_delete')
EventTypeArg.paper_content_remove_from_folder = EventTypeArg('paper_content_remove_from_folder')
EventTypeArg.paper_content_remove_member = EventTypeArg('paper_content_remove_member')
EventTypeArg.paper_content_rename = EventTypeArg('paper_content_rename')
EventTypeArg.paper_content_restore = EventTypeArg('paper_content_restore')
EventTypeArg.paper_doc_add_comment = EventTypeArg('paper_doc_add_comment')
EventTypeArg.paper_doc_change_member_role = EventTypeArg('paper_doc_change_member_role')
EventTypeArg.paper_doc_change_sharing_policy = EventTypeArg('paper_doc_change_sharing_policy')
EventTypeArg.paper_doc_change_subscription = EventTypeArg('paper_doc_change_subscription')
EventTypeArg.paper_doc_deleted = EventTypeArg('paper_doc_deleted')
EventTypeArg.paper_doc_delete_comment = EventTypeArg('paper_doc_delete_comment')
EventTypeArg.paper_doc_download = EventTypeArg('paper_doc_download')
EventTypeArg.paper_doc_edit = EventTypeArg('paper_doc_edit')
EventTypeArg.paper_doc_edit_comment = EventTypeArg('paper_doc_edit_comment')
EventTypeArg.paper_doc_followed = EventTypeArg('paper_doc_followed')
EventTypeArg.paper_doc_mention = EventTypeArg('paper_doc_mention')
EventTypeArg.paper_doc_ownership_changed = EventTypeArg('paper_doc_ownership_changed')
EventTypeArg.paper_doc_request_access = EventTypeArg('paper_doc_request_access')
EventTypeArg.paper_doc_resolve_comment = EventTypeArg('paper_doc_resolve_comment')
EventTypeArg.paper_doc_revert = EventTypeArg('paper_doc_revert')
EventTypeArg.paper_doc_slack_share = EventTypeArg('paper_doc_slack_share')
EventTypeArg.paper_doc_team_invite = EventTypeArg('paper_doc_team_invite')
EventTypeArg.paper_doc_trashed = EventTypeArg('paper_doc_trashed')
EventTypeArg.paper_doc_unresolve_comment = EventTypeArg('paper_doc_unresolve_comment')
EventTypeArg.paper_doc_untrashed = EventTypeArg('paper_doc_untrashed')
EventTypeArg.paper_doc_view = EventTypeArg('paper_doc_view')
EventTypeArg.paper_external_view_allow = EventTypeArg('paper_external_view_allow')
EventTypeArg.paper_external_view_default_team = EventTypeArg('paper_external_view_default_team')
EventTypeArg.paper_external_view_forbid = EventTypeArg('paper_external_view_forbid')
EventTypeArg.paper_folder_change_subscription = EventTypeArg('paper_folder_change_subscription')
EventTypeArg.paper_folder_deleted = EventTypeArg('paper_folder_deleted')
EventTypeArg.paper_folder_followed = EventTypeArg('paper_folder_followed')
EventTypeArg.paper_folder_team_invite = EventTypeArg('paper_folder_team_invite')
EventTypeArg.paper_published_link_change_permission = EventTypeArg('paper_published_link_change_permission')
EventTypeArg.paper_published_link_create = EventTypeArg('paper_published_link_create')
EventTypeArg.paper_published_link_disabled = EventTypeArg('paper_published_link_disabled')
EventTypeArg.paper_published_link_view = EventTypeArg('paper_published_link_view')
EventTypeArg.password_change = EventTypeArg('password_change')
EventTypeArg.password_reset = EventTypeArg('password_reset')
EventTypeArg.password_reset_all = EventTypeArg('password_reset_all')
EventTypeArg.classification_create_report = EventTypeArg('classification_create_report')
EventTypeArg.classification_create_report_fail = EventTypeArg('classification_create_report_fail')
EventTypeArg.emm_create_exceptions_report = EventTypeArg('emm_create_exceptions_report')
EventTypeArg.emm_create_usage_report = EventTypeArg('emm_create_usage_report')
EventTypeArg.export_members_report = EventTypeArg('export_members_report')
EventTypeArg.export_members_report_fail = EventTypeArg('export_members_report_fail')
EventTypeArg.external_sharing_create_report = EventTypeArg('external_sharing_create_report')
EventTypeArg.external_sharing_report_failed = EventTypeArg('external_sharing_report_failed')
EventTypeArg.no_expiration_link_gen_create_report = EventTypeArg('no_expiration_link_gen_create_report')
EventTypeArg.no_expiration_link_gen_report_failed = EventTypeArg('no_expiration_link_gen_report_failed')
EventTypeArg.no_password_link_gen_create_report = EventTypeArg('no_password_link_gen_create_report')
EventTypeArg.no_password_link_gen_report_failed = EventTypeArg('no_password_link_gen_report_failed')
EventTypeArg.no_password_link_view_create_report = EventTypeArg('no_password_link_view_create_report')
EventTypeArg.no_password_link_view_report_failed = EventTypeArg('no_password_link_view_report_failed')
EventTypeArg.outdated_link_view_create_report = EventTypeArg('outdated_link_view_create_report')
EventTypeArg.outdated_link_view_report_failed = EventTypeArg('outdated_link_view_report_failed')
EventTypeArg.paper_admin_export_start = EventTypeArg('paper_admin_export_start')
EventTypeArg.smart_sync_create_admin_privilege_report = EventTypeArg('smart_sync_create_admin_privilege_report')
EventTypeArg.team_activity_create_report = EventTypeArg('team_activity_create_report')
EventTypeArg.team_activity_create_report_fail = EventTypeArg('team_activity_create_report_fail')
EventTypeArg.collection_share = EventTypeArg('collection_share')
EventTypeArg.file_transfers_file_add = EventTypeArg('file_transfers_file_add')
EventTypeArg.file_transfers_transfer_delete = EventTypeArg('file_transfers_transfer_delete')
EventTypeArg.file_transfers_transfer_download = EventTypeArg('file_transfers_transfer_download')
EventTypeArg.file_transfers_transfer_send = EventTypeArg('file_transfers_transfer_send')
EventTypeArg.file_transfers_transfer_view = EventTypeArg('file_transfers_transfer_view')
EventTypeArg.note_acl_invite_only = EventTypeArg('note_acl_invite_only')
EventTypeArg.note_acl_link = EventTypeArg('note_acl_link')
EventTypeArg.note_acl_team_link = EventTypeArg('note_acl_team_link')
EventTypeArg.note_shared = EventTypeArg('note_shared')
EventTypeArg.note_share_receive = EventTypeArg('note_share_receive')
EventTypeArg.open_note_shared = EventTypeArg('open_note_shared')
EventTypeArg.sf_add_group = EventTypeArg('sf_add_group')
EventTypeArg.sf_allow_non_members_to_view_shared_links = EventTypeArg('sf_allow_non_members_to_view_shared_links')
EventTypeArg.sf_external_invite_warn = EventTypeArg('sf_external_invite_warn')
EventTypeArg.sf_fb_invite = EventTypeArg('sf_fb_invite')
EventTypeArg.sf_fb_invite_change_role = EventTypeArg('sf_fb_invite_change_role')
EventTypeArg.sf_fb_uninvite = EventTypeArg('sf_fb_uninvite')
EventTypeArg.sf_invite_group = EventTypeArg('sf_invite_group')
EventTypeArg.sf_team_grant_access = EventTypeArg('sf_team_grant_access')
EventTypeArg.sf_team_invite = EventTypeArg('sf_team_invite')
EventTypeArg.sf_team_invite_change_role = EventTypeArg('sf_team_invite_change_role')
EventTypeArg.sf_team_join = EventTypeArg('sf_team_join')
EventTypeArg.sf_team_join_from_oob_link = EventTypeArg('sf_team_join_from_oob_link')
EventTypeArg.sf_team_uninvite = EventTypeArg('sf_team_uninvite')
EventTypeArg.shared_content_add_invitees = EventTypeArg('shared_content_add_invitees')
EventTypeArg.shared_content_add_link_expiry = EventTypeArg('shared_content_add_link_expiry')
EventTypeArg.shared_content_add_link_password = EventTypeArg('shared_content_add_link_password')
EventTypeArg.shared_content_add_member = EventTypeArg('shared_content_add_member')
EventTypeArg.shared_content_change_downloads_policy = EventTypeArg('shared_content_change_downloads_policy')
EventTypeArg.shared_content_change_invitee_role = EventTypeArg('shared_content_change_invitee_role')
EventTypeArg.shared_content_change_link_audience = EventTypeArg('shared_content_change_link_audience')
EventTypeArg.shared_content_change_link_expiry = EventTypeArg('shared_content_change_link_expiry')
EventTypeArg.shared_content_change_link_password = EventTypeArg('shared_content_change_link_password')
EventTypeArg.shared_content_change_member_role = EventTypeArg('shared_content_change_member_role')
EventTypeArg.shared_content_change_viewer_info_policy = EventTypeArg('shared_content_change_viewer_info_policy')
EventTypeArg.shared_content_claim_invitation = EventTypeArg('shared_content_claim_invitation')
EventTypeArg.shared_content_copy = EventTypeArg('shared_content_copy')
EventTypeArg.shared_content_download = EventTypeArg('shared_content_download')
EventTypeArg.shared_content_relinquish_membership = EventTypeArg('shared_content_relinquish_membership')
EventTypeArg.shared_content_remove_invitees = EventTypeArg('shared_content_remove_invitees')
EventTypeArg.shared_content_remove_link_expiry = EventTypeArg('shared_content_remove_link_expiry')
EventTypeArg.shared_content_remove_link_password = EventTypeArg('shared_content_remove_link_password')
EventTypeArg.shared_content_remove_member = EventTypeArg('shared_content_remove_member')
EventTypeArg.shared_content_request_access = EventTypeArg('shared_content_request_access')
EventTypeArg.shared_content_restore_invitees = EventTypeArg('shared_content_restore_invitees')
EventTypeArg.shared_content_restore_member = EventTypeArg('shared_content_restore_member')
EventTypeArg.shared_content_unshare = EventTypeArg('shared_content_unshare')
EventTypeArg.shared_content_view = EventTypeArg('shared_content_view')
EventTypeArg.shared_folder_change_link_policy = EventTypeArg('shared_folder_change_link_policy')
EventTypeArg.shared_folder_change_members_inheritance_policy = EventTypeArg('shared_folder_change_members_inheritance_policy')
EventTypeArg.shared_folder_change_members_management_policy = EventTypeArg('shared_folder_change_members_management_policy')
EventTypeArg.shared_folder_change_members_policy = EventTypeArg('shared_folder_change_members_policy')
EventTypeArg.shared_folder_create = EventTypeArg('shared_folder_create')
EventTypeArg.shared_folder_decline_invitation = EventTypeArg('shared_folder_decline_invitation')
EventTypeArg.shared_folder_mount = EventTypeArg('shared_folder_mount')
EventTypeArg.shared_folder_nest = EventTypeArg('shared_folder_nest')
EventTypeArg.shared_folder_transfer_ownership = EventTypeArg('shared_folder_transfer_ownership')
EventTypeArg.shared_folder_unmount = EventTypeArg('shared_folder_unmount')
EventTypeArg.shared_link_add_expiry = EventTypeArg('shared_link_add_expiry')
EventTypeArg.shared_link_change_expiry = EventTypeArg('shared_link_change_expiry')
EventTypeArg.shared_link_change_visibility = EventTypeArg('shared_link_change_visibility')
EventTypeArg.shared_link_copy = EventTypeArg('shared_link_copy')
EventTypeArg.shared_link_create = EventTypeArg('shared_link_create')
EventTypeArg.shared_link_disable = EventTypeArg('shared_link_disable')
EventTypeArg.shared_link_download = EventTypeArg('shared_link_download')
EventTypeArg.shared_link_remove_expiry = EventTypeArg('shared_link_remove_expiry')
EventTypeArg.shared_link_settings_add_expiration = EventTypeArg('shared_link_settings_add_expiration')
EventTypeArg.shared_link_settings_add_password = EventTypeArg('shared_link_settings_add_password')
EventTypeArg.shared_link_settings_allow_download_disabled = EventTypeArg('shared_link_settings_allow_download_disabled')
EventTypeArg.shared_link_settings_allow_download_enabled = EventTypeArg('shared_link_settings_allow_download_enabled')
EventTypeArg.shared_link_settings_change_audience = EventTypeArg('shared_link_settings_change_audience')
EventTypeArg.shared_link_settings_change_expiration = EventTypeArg('shared_link_settings_change_expiration')
EventTypeArg.shared_link_settings_change_password = EventTypeArg('shared_link_settings_change_password')
EventTypeArg.shared_link_settings_remove_expiration = EventTypeArg('shared_link_settings_remove_expiration')
EventTypeArg.shared_link_settings_remove_password = EventTypeArg('shared_link_settings_remove_password')
EventTypeArg.shared_link_share = EventTypeArg('shared_link_share')
EventTypeArg.shared_link_view = EventTypeArg('shared_link_view')
EventTypeArg.shared_note_opened = EventTypeArg('shared_note_opened')
EventTypeArg.shmodel_disable_downloads = EventTypeArg('shmodel_disable_downloads')
EventTypeArg.shmodel_enable_downloads = EventTypeArg('shmodel_enable_downloads')
EventTypeArg.shmodel_group_share = EventTypeArg('shmodel_group_share')
EventTypeArg.showcase_access_granted = EventTypeArg('showcase_access_granted')
EventTypeArg.showcase_add_member = EventTypeArg('showcase_add_member')
EventTypeArg.showcase_archived = EventTypeArg('showcase_archived')
EventTypeArg.showcase_created = EventTypeArg('showcase_created')
EventTypeArg.showcase_delete_comment = EventTypeArg('showcase_delete_comment')
EventTypeArg.showcase_edited = EventTypeArg('showcase_edited')
EventTypeArg.showcase_edit_comment = EventTypeArg('showcase_edit_comment')
EventTypeArg.showcase_file_added = EventTypeArg('showcase_file_added')
EventTypeArg.showcase_file_download = EventTypeArg('showcase_file_download')
EventTypeArg.showcase_file_removed = EventTypeArg('showcase_file_removed')
EventTypeArg.showcase_file_view = EventTypeArg('showcase_file_view')
EventTypeArg.showcase_permanently_deleted = EventTypeArg('showcase_permanently_deleted')
EventTypeArg.showcase_post_comment = EventTypeArg('showcase_post_comment')
EventTypeArg.showcase_remove_member = EventTypeArg('showcase_remove_member')
EventTypeArg.showcase_renamed = EventTypeArg('showcase_renamed')
EventTypeArg.showcase_request_access = EventTypeArg('showcase_request_access')
EventTypeArg.showcase_resolve_comment = EventTypeArg('showcase_resolve_comment')
EventTypeArg.showcase_restored = EventTypeArg('showcase_restored')
EventTypeArg.showcase_trashed = EventTypeArg('showcase_trashed')
EventTypeArg.showcase_trashed_deprecated = EventTypeArg('showcase_trashed_deprecated')
EventTypeArg.showcase_unresolve_comment = EventTypeArg('showcase_unresolve_comment')
EventTypeArg.showcase_untrashed = EventTypeArg('showcase_untrashed')
EventTypeArg.showcase_untrashed_deprecated = EventTypeArg('showcase_untrashed_deprecated')
EventTypeArg.showcase_view = EventTypeArg('showcase_view')
EventTypeArg.sso_add_cert = EventTypeArg('sso_add_cert')
EventTypeArg.sso_add_login_url = EventTypeArg('sso_add_login_url')
EventTypeArg.sso_add_logout_url = EventTypeArg('sso_add_logout_url')
EventTypeArg.sso_change_cert = EventTypeArg('sso_change_cert')
EventTypeArg.sso_change_login_url = EventTypeArg('sso_change_login_url')
EventTypeArg.sso_change_logout_url = EventTypeArg('sso_change_logout_url')
EventTypeArg.sso_change_saml_identity_mode = EventTypeArg('sso_change_saml_identity_mode')
EventTypeArg.sso_remove_cert = EventTypeArg('sso_remove_cert')
EventTypeArg.sso_remove_login_url = EventTypeArg('sso_remove_login_url')
EventTypeArg.sso_remove_logout_url = EventTypeArg('sso_remove_logout_url')
EventTypeArg.team_folder_change_status = EventTypeArg('team_folder_change_status')
EventTypeArg.team_folder_create = EventTypeArg('team_folder_create')
EventTypeArg.team_folder_downgrade = EventTypeArg('team_folder_downgrade')
EventTypeArg.team_folder_permanently_delete = EventTypeArg('team_folder_permanently_delete')
EventTypeArg.team_folder_rename = EventTypeArg('team_folder_rename')
EventTypeArg.team_selective_sync_settings_changed = EventTypeArg('team_selective_sync_settings_changed')
EventTypeArg.account_capture_change_policy = EventTypeArg('account_capture_change_policy')
EventTypeArg.admin_email_reminders_changed = EventTypeArg('admin_email_reminders_changed')
EventTypeArg.allow_download_disabled = EventTypeArg('allow_download_disabled')
EventTypeArg.allow_download_enabled = EventTypeArg('allow_download_enabled')
EventTypeArg.app_permissions_changed = EventTypeArg('app_permissions_changed')
EventTypeArg.camera_uploads_policy_changed = EventTypeArg('camera_uploads_policy_changed')
EventTypeArg.capture_transcript_policy_changed = EventTypeArg('capture_transcript_policy_changed')
EventTypeArg.classification_change_policy = EventTypeArg('classification_change_policy')
EventTypeArg.computer_backup_policy_changed = EventTypeArg('computer_backup_policy_changed')
EventTypeArg.content_administration_policy_changed = EventTypeArg('content_administration_policy_changed')
EventTypeArg.data_placement_restriction_change_policy = EventTypeArg('data_placement_restriction_change_policy')
EventTypeArg.data_placement_restriction_satisfy_policy = EventTypeArg('data_placement_restriction_satisfy_policy')
EventTypeArg.device_approvals_add_exception = EventTypeArg('device_approvals_add_exception')
EventTypeArg.device_approvals_change_desktop_policy = EventTypeArg('device_approvals_change_desktop_policy')
EventTypeArg.device_approvals_change_mobile_policy = EventTypeArg('device_approvals_change_mobile_policy')
EventTypeArg.device_approvals_change_overage_action = EventTypeArg('device_approvals_change_overage_action')
EventTypeArg.device_approvals_change_unlink_action = EventTypeArg('device_approvals_change_unlink_action')
EventTypeArg.device_approvals_remove_exception = EventTypeArg('device_approvals_remove_exception')
EventTypeArg.directory_restrictions_add_members = EventTypeArg('directory_restrictions_add_members')
EventTypeArg.directory_restrictions_remove_members = EventTypeArg('directory_restrictions_remove_members')
EventTypeArg.dropbox_passwords_policy_changed = EventTypeArg('dropbox_passwords_policy_changed')
EventTypeArg.email_ingest_policy_changed = EventTypeArg('email_ingest_policy_changed')
EventTypeArg.emm_add_exception = EventTypeArg('emm_add_exception')
EventTypeArg.emm_change_policy = EventTypeArg('emm_change_policy')
EventTypeArg.emm_remove_exception = EventTypeArg('emm_remove_exception')
EventTypeArg.extended_version_history_change_policy = EventTypeArg('extended_version_history_change_policy')
EventTypeArg.external_drive_backup_policy_changed = EventTypeArg('external_drive_backup_policy_changed')
EventTypeArg.file_comments_change_policy = EventTypeArg('file_comments_change_policy')
EventTypeArg.file_locking_policy_changed = EventTypeArg('file_locking_policy_changed')
EventTypeArg.file_provider_migration_policy_changed = EventTypeArg('file_provider_migration_policy_changed')
EventTypeArg.file_requests_change_policy = EventTypeArg('file_requests_change_policy')
EventTypeArg.file_requests_emails_enabled = EventTypeArg('file_requests_emails_enabled')
EventTypeArg.file_requests_emails_restricted_to_team_only = EventTypeArg('file_requests_emails_restricted_to_team_only')
EventTypeArg.file_transfers_policy_changed = EventTypeArg('file_transfers_policy_changed')
EventTypeArg.folder_link_restriction_policy_changed = EventTypeArg('folder_link_restriction_policy_changed')
EventTypeArg.google_sso_change_policy = EventTypeArg('google_sso_change_policy')
EventTypeArg.group_user_management_change_policy = EventTypeArg('group_user_management_change_policy')
EventTypeArg.integration_policy_changed = EventTypeArg('integration_policy_changed')
EventTypeArg.invite_acceptance_email_policy_changed = EventTypeArg('invite_acceptance_email_policy_changed')
EventTypeArg.member_requests_change_policy = EventTypeArg('member_requests_change_policy')
EventTypeArg.member_send_invite_policy_changed = EventTypeArg('member_send_invite_policy_changed')
EventTypeArg.member_space_limits_add_exception = EventTypeArg('member_space_limits_add_exception')
EventTypeArg.member_space_limits_change_caps_type_policy = EventTypeArg('member_space_limits_change_caps_type_policy')
EventTypeArg.member_space_limits_change_policy = EventTypeArg('member_space_limits_change_policy')
EventTypeArg.member_space_limits_remove_exception = EventTypeArg('member_space_limits_remove_exception')
EventTypeArg.member_suggestions_change_policy = EventTypeArg('member_suggestions_change_policy')
EventTypeArg.microsoft_office_addin_change_policy = EventTypeArg('microsoft_office_addin_change_policy')
EventTypeArg.network_control_change_policy = EventTypeArg('network_control_change_policy')
EventTypeArg.paper_change_deployment_policy = EventTypeArg('paper_change_deployment_policy')
EventTypeArg.paper_change_member_link_policy = EventTypeArg('paper_change_member_link_policy')
EventTypeArg.paper_change_member_policy = EventTypeArg('paper_change_member_policy')
EventTypeArg.paper_change_policy = EventTypeArg('paper_change_policy')
EventTypeArg.paper_default_folder_policy_changed = EventTypeArg('paper_default_folder_policy_changed')
EventTypeArg.paper_desktop_policy_changed = EventTypeArg('paper_desktop_policy_changed')
EventTypeArg.paper_enabled_users_group_addition = EventTypeArg('paper_enabled_users_group_addition')
EventTypeArg.paper_enabled_users_group_removal = EventTypeArg('paper_enabled_users_group_removal')
EventTypeArg.password_strength_requirements_change_policy = EventTypeArg('password_strength_requirements_change_policy')
EventTypeArg.permanent_delete_change_policy = EventTypeArg('permanent_delete_change_policy')
EventTypeArg.reseller_support_change_policy = EventTypeArg('reseller_support_change_policy')
EventTypeArg.rewind_policy_changed = EventTypeArg('rewind_policy_changed')
EventTypeArg.send_for_signature_policy_changed = EventTypeArg('send_for_signature_policy_changed')
EventTypeArg.sharing_change_folder_join_policy = EventTypeArg('sharing_change_folder_join_policy')
EventTypeArg.sharing_change_link_allow_change_expiration_policy = EventTypeArg('sharing_change_link_allow_change_expiration_policy')
EventTypeArg.sharing_change_link_default_expiration_policy = EventTypeArg('sharing_change_link_default_expiration_policy')
EventTypeArg.sharing_change_link_enforce_password_policy = EventTypeArg('sharing_change_link_enforce_password_policy')
EventTypeArg.sharing_change_link_policy = EventTypeArg('sharing_change_link_policy')
EventTypeArg.sharing_change_member_policy = EventTypeArg('sharing_change_member_policy')
EventTypeArg.showcase_change_download_policy = EventTypeArg('showcase_change_download_policy')
EventTypeArg.showcase_change_enabled_policy = EventTypeArg('showcase_change_enabled_policy')
EventTypeArg.showcase_change_external_sharing_policy = EventTypeArg('showcase_change_external_sharing_policy')
EventTypeArg.smarter_smart_sync_policy_changed = EventTypeArg('smarter_smart_sync_policy_changed')
EventTypeArg.smart_sync_change_policy = EventTypeArg('smart_sync_change_policy')
EventTypeArg.smart_sync_not_opt_out = EventTypeArg('smart_sync_not_opt_out')
EventTypeArg.smart_sync_opt_out = EventTypeArg('smart_sync_opt_out')
EventTypeArg.sso_change_policy = EventTypeArg('sso_change_policy')
EventTypeArg.team_branding_policy_changed = EventTypeArg('team_branding_policy_changed')
EventTypeArg.team_extensions_policy_changed = EventTypeArg('team_extensions_policy_changed')
EventTypeArg.team_selective_sync_policy_changed = EventTypeArg('team_selective_sync_policy_changed')
EventTypeArg.team_sharing_whitelist_subjects_changed = EventTypeArg('team_sharing_whitelist_subjects_changed')
EventTypeArg.tfa_add_exception = EventTypeArg('tfa_add_exception')
EventTypeArg.tfa_change_policy = EventTypeArg('tfa_change_policy')
EventTypeArg.tfa_remove_exception = EventTypeArg('tfa_remove_exception')
EventTypeArg.two_account_change_policy = EventTypeArg('two_account_change_policy')
EventTypeArg.viewer_info_policy_changed = EventTypeArg('viewer_info_policy_changed')
EventTypeArg.watermarking_policy_changed = EventTypeArg('watermarking_policy_changed')
EventTypeArg.web_sessions_change_active_session_limit = EventTypeArg('web_sessions_change_active_session_limit')
EventTypeArg.web_sessions_change_fixed_length_policy = EventTypeArg('web_sessions_change_fixed_length_policy')
EventTypeArg.web_sessions_change_idle_length_policy = EventTypeArg('web_sessions_change_idle_length_policy')
EventTypeArg.data_residency_migration_request_successful = EventTypeArg('data_residency_migration_request_successful')
EventTypeArg.data_residency_migration_request_unsuccessful = EventTypeArg('data_residency_migration_request_unsuccessful')
EventTypeArg.team_merge_from = EventTypeArg('team_merge_from')
EventTypeArg.team_merge_to = EventTypeArg('team_merge_to')
EventTypeArg.team_profile_add_background = EventTypeArg('team_profile_add_background')
EventTypeArg.team_profile_add_logo = EventTypeArg('team_profile_add_logo')
EventTypeArg.team_profile_change_background = EventTypeArg('team_profile_change_background')
EventTypeArg.team_profile_change_default_language = EventTypeArg('team_profile_change_default_language')
EventTypeArg.team_profile_change_logo = EventTypeArg('team_profile_change_logo')
EventTypeArg.team_profile_change_name = EventTypeArg('team_profile_change_name')
EventTypeArg.team_profile_remove_background = EventTypeArg('team_profile_remove_background')
EventTypeArg.team_profile_remove_logo = EventTypeArg('team_profile_remove_logo')
EventTypeArg.tfa_add_backup_phone = EventTypeArg('tfa_add_backup_phone')
EventTypeArg.tfa_add_security_key = EventTypeArg('tfa_add_security_key')
EventTypeArg.tfa_change_backup_phone = EventTypeArg('tfa_change_backup_phone')
EventTypeArg.tfa_change_status = EventTypeArg('tfa_change_status')
EventTypeArg.tfa_remove_backup_phone = EventTypeArg('tfa_remove_backup_phone')
EventTypeArg.tfa_remove_security_key = EventTypeArg('tfa_remove_security_key')
EventTypeArg.tfa_reset = EventTypeArg('tfa_reset')
EventTypeArg.changed_enterprise_admin_role = EventTypeArg('changed_enterprise_admin_role')
EventTypeArg.changed_enterprise_connected_team_status = EventTypeArg('changed_enterprise_connected_team_status')
EventTypeArg.ended_enterprise_admin_session = EventTypeArg('ended_enterprise_admin_session')
EventTypeArg.ended_enterprise_admin_session_deprecated = EventTypeArg('ended_enterprise_admin_session_deprecated')
EventTypeArg.enterprise_settings_locking = EventTypeArg('enterprise_settings_locking')
EventTypeArg.guest_admin_change_status = EventTypeArg('guest_admin_change_status')
EventTypeArg.started_enterprise_admin_session = EventTypeArg('started_enterprise_admin_session')
EventTypeArg.team_merge_request_accepted = EventTypeArg('team_merge_request_accepted')
EventTypeArg.team_merge_request_accepted_shown_to_primary_team = EventTypeArg('team_merge_request_accepted_shown_to_primary_team')
EventTypeArg.team_merge_request_accepted_shown_to_secondary_team = EventTypeArg('team_merge_request_accepted_shown_to_secondary_team')
EventTypeArg.team_merge_request_auto_canceled = EventTypeArg('team_merge_request_auto_canceled')
EventTypeArg.team_merge_request_canceled = EventTypeArg('team_merge_request_canceled')
EventTypeArg.team_merge_request_canceled_shown_to_primary_team = EventTypeArg('team_merge_request_canceled_shown_to_primary_team')
EventTypeArg.team_merge_request_canceled_shown_to_secondary_team = EventTypeArg('team_merge_request_canceled_shown_to_secondary_team')
EventTypeArg.team_merge_request_expired = EventTypeArg('team_merge_request_expired')
EventTypeArg.team_merge_request_expired_shown_to_primary_team = EventTypeArg('team_merge_request_expired_shown_to_primary_team')
EventTypeArg.team_merge_request_expired_shown_to_secondary_team = EventTypeArg('team_merge_request_expired_shown_to_secondary_team')
EventTypeArg.team_merge_request_rejected_shown_to_primary_team = EventTypeArg('team_merge_request_rejected_shown_to_primary_team')
EventTypeArg.team_merge_request_rejected_shown_to_secondary_team = EventTypeArg('team_merge_request_rejected_shown_to_secondary_team')
EventTypeArg.team_merge_request_reminder = EventTypeArg('team_merge_request_reminder')
EventTypeArg.team_merge_request_reminder_shown_to_primary_team = EventTypeArg('team_merge_request_reminder_shown_to_primary_team')
EventTypeArg.team_merge_request_reminder_shown_to_secondary_team = EventTypeArg('team_merge_request_reminder_shown_to_secondary_team')
EventTypeArg.team_merge_request_revoked = EventTypeArg('team_merge_request_revoked')
EventTypeArg.team_merge_request_sent_shown_to_primary_team = EventTypeArg('team_merge_request_sent_shown_to_primary_team')
EventTypeArg.team_merge_request_sent_shown_to_secondary_team = EventTypeArg('team_merge_request_sent_shown_to_secondary_team')
EventTypeArg.other = EventTypeArg('other')

ExportMembersReportDetails._all_field_names_ = set([])
ExportMembersReportDetails._all_fields_ = []

ExportMembersReportFailDetails.failure_reason.validator = team.TeamReportFailureReason_validator
ExportMembersReportFailDetails._all_field_names_ = set(['failure_reason'])
ExportMembersReportFailDetails._all_fields_ = [('failure_reason', ExportMembersReportFailDetails.failure_reason.validator)]

ExportMembersReportFailType.description.validator = bv.String()
ExportMembersReportFailType._all_field_names_ = set(['description'])
ExportMembersReportFailType._all_fields_ = [('description', ExportMembersReportFailType.description.validator)]

ExportMembersReportType.description.validator = bv.String()
ExportMembersReportType._all_field_names_ = set(['description'])
ExportMembersReportType._all_fields_ = [('description', ExportMembersReportType.description.validator)]

ExtendedVersionHistoryChangePolicyDetails.new_value.validator = ExtendedVersionHistoryPolicy_validator
ExtendedVersionHistoryChangePolicyDetails.previous_value.validator = bv.Nullable(ExtendedVersionHistoryPolicy_validator)
ExtendedVersionHistoryChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ExtendedVersionHistoryChangePolicyDetails._all_fields_ = [
    ('new_value', ExtendedVersionHistoryChangePolicyDetails.new_value.validator),
    ('previous_value', ExtendedVersionHistoryChangePolicyDetails.previous_value.validator),
]

ExtendedVersionHistoryChangePolicyType.description.validator = bv.String()
ExtendedVersionHistoryChangePolicyType._all_field_names_ = set(['description'])
ExtendedVersionHistoryChangePolicyType._all_fields_ = [('description', ExtendedVersionHistoryChangePolicyType.description.validator)]

ExtendedVersionHistoryPolicy._explicitly_limited_validator = bv.Void()
ExtendedVersionHistoryPolicy._explicitly_unlimited_validator = bv.Void()
ExtendedVersionHistoryPolicy._implicitly_limited_validator = bv.Void()
ExtendedVersionHistoryPolicy._implicitly_unlimited_validator = bv.Void()
ExtendedVersionHistoryPolicy._other_validator = bv.Void()
ExtendedVersionHistoryPolicy._tagmap = {
    'explicitly_limited': ExtendedVersionHistoryPolicy._explicitly_limited_validator,
    'explicitly_unlimited': ExtendedVersionHistoryPolicy._explicitly_unlimited_validator,
    'implicitly_limited': ExtendedVersionHistoryPolicy._implicitly_limited_validator,
    'implicitly_unlimited': ExtendedVersionHistoryPolicy._implicitly_unlimited_validator,
    'other': ExtendedVersionHistoryPolicy._other_validator,
}

ExtendedVersionHistoryPolicy.explicitly_limited = ExtendedVersionHistoryPolicy('explicitly_limited')
ExtendedVersionHistoryPolicy.explicitly_unlimited = ExtendedVersionHistoryPolicy('explicitly_unlimited')
ExtendedVersionHistoryPolicy.implicitly_limited = ExtendedVersionHistoryPolicy('implicitly_limited')
ExtendedVersionHistoryPolicy.implicitly_unlimited = ExtendedVersionHistoryPolicy('implicitly_unlimited')
ExtendedVersionHistoryPolicy.other = ExtendedVersionHistoryPolicy('other')

ExternalDriveBackupEligibilityStatus._exceed_license_cap_validator = bv.Void()
ExternalDriveBackupEligibilityStatus._success_validator = bv.Void()
ExternalDriveBackupEligibilityStatus._other_validator = bv.Void()
ExternalDriveBackupEligibilityStatus._tagmap = {
    'exceed_license_cap': ExternalDriveBackupEligibilityStatus._exceed_license_cap_validator,
    'success': ExternalDriveBackupEligibilityStatus._success_validator,
    'other': ExternalDriveBackupEligibilityStatus._other_validator,
}

ExternalDriveBackupEligibilityStatus.exceed_license_cap = ExternalDriveBackupEligibilityStatus('exceed_license_cap')
ExternalDriveBackupEligibilityStatus.success = ExternalDriveBackupEligibilityStatus('success')
ExternalDriveBackupEligibilityStatus.other = ExternalDriveBackupEligibilityStatus('other')

ExternalDriveBackupEligibilityStatusCheckedDetails.desktop_device_session_info.validator = DesktopDeviceSessionLogInfo_validator
ExternalDriveBackupEligibilityStatusCheckedDetails.status.validator = ExternalDriveBackupEligibilityStatus_validator
ExternalDriveBackupEligibilityStatusCheckedDetails.number_of_external_drive_backup.validator = bv.UInt64()
ExternalDriveBackupEligibilityStatusCheckedDetails._all_field_names_ = set([
    'desktop_device_session_info',
    'status',
    'number_of_external_drive_backup',
])
ExternalDriveBackupEligibilityStatusCheckedDetails._all_fields_ = [
    ('desktop_device_session_info', ExternalDriveBackupEligibilityStatusCheckedDetails.desktop_device_session_info.validator),
    ('status', ExternalDriveBackupEligibilityStatusCheckedDetails.status.validator),
    ('number_of_external_drive_backup', ExternalDriveBackupEligibilityStatusCheckedDetails.number_of_external_drive_backup.validator),
]

ExternalDriveBackupEligibilityStatusCheckedType.description.validator = bv.String()
ExternalDriveBackupEligibilityStatusCheckedType._all_field_names_ = set(['description'])
ExternalDriveBackupEligibilityStatusCheckedType._all_fields_ = [('description', ExternalDriveBackupEligibilityStatusCheckedType.description.validator)]

ExternalDriveBackupPolicy._default_validator = bv.Void()
ExternalDriveBackupPolicy._disabled_validator = bv.Void()
ExternalDriveBackupPolicy._enabled_validator = bv.Void()
ExternalDriveBackupPolicy._other_validator = bv.Void()
ExternalDriveBackupPolicy._tagmap = {
    'default': ExternalDriveBackupPolicy._default_validator,
    'disabled': ExternalDriveBackupPolicy._disabled_validator,
    'enabled': ExternalDriveBackupPolicy._enabled_validator,
    'other': ExternalDriveBackupPolicy._other_validator,
}

ExternalDriveBackupPolicy.default = ExternalDriveBackupPolicy('default')
ExternalDriveBackupPolicy.disabled = ExternalDriveBackupPolicy('disabled')
ExternalDriveBackupPolicy.enabled = ExternalDriveBackupPolicy('enabled')
ExternalDriveBackupPolicy.other = ExternalDriveBackupPolicy('other')

ExternalDriveBackupPolicyChangedDetails.new_value.validator = ExternalDriveBackupPolicy_validator
ExternalDriveBackupPolicyChangedDetails.previous_value.validator = ExternalDriveBackupPolicy_validator
ExternalDriveBackupPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ExternalDriveBackupPolicyChangedDetails._all_fields_ = [
    ('new_value', ExternalDriveBackupPolicyChangedDetails.new_value.validator),
    ('previous_value', ExternalDriveBackupPolicyChangedDetails.previous_value.validator),
]

ExternalDriveBackupPolicyChangedType.description.validator = bv.String()
ExternalDriveBackupPolicyChangedType._all_field_names_ = set(['description'])
ExternalDriveBackupPolicyChangedType._all_fields_ = [('description', ExternalDriveBackupPolicyChangedType.description.validator)]

ExternalDriveBackupStatus._broken_validator = bv.Void()
ExternalDriveBackupStatus._created_validator = bv.Void()
ExternalDriveBackupStatus._created_or_broken_validator = bv.Void()
ExternalDriveBackupStatus._deleted_validator = bv.Void()
ExternalDriveBackupStatus._empty_validator = bv.Void()
ExternalDriveBackupStatus._unknown_validator = bv.Void()
ExternalDriveBackupStatus._other_validator = bv.Void()
ExternalDriveBackupStatus._tagmap = {
    'broken': ExternalDriveBackupStatus._broken_validator,
    'created': ExternalDriveBackupStatus._created_validator,
    'created_or_broken': ExternalDriveBackupStatus._created_or_broken_validator,
    'deleted': ExternalDriveBackupStatus._deleted_validator,
    'empty': ExternalDriveBackupStatus._empty_validator,
    'unknown': ExternalDriveBackupStatus._unknown_validator,
    'other': ExternalDriveBackupStatus._other_validator,
}

ExternalDriveBackupStatus.broken = ExternalDriveBackupStatus('broken')
ExternalDriveBackupStatus.created = ExternalDriveBackupStatus('created')
ExternalDriveBackupStatus.created_or_broken = ExternalDriveBackupStatus('created_or_broken')
ExternalDriveBackupStatus.deleted = ExternalDriveBackupStatus('deleted')
ExternalDriveBackupStatus.empty = ExternalDriveBackupStatus('empty')
ExternalDriveBackupStatus.unknown = ExternalDriveBackupStatus('unknown')
ExternalDriveBackupStatus.other = ExternalDriveBackupStatus('other')

ExternalDriveBackupStatusChangedDetails.desktop_device_session_info.validator = DesktopDeviceSessionLogInfo_validator
ExternalDriveBackupStatusChangedDetails.previous_value.validator = ExternalDriveBackupStatus_validator
ExternalDriveBackupStatusChangedDetails.new_value.validator = ExternalDriveBackupStatus_validator
ExternalDriveBackupStatusChangedDetails._all_field_names_ = set([
    'desktop_device_session_info',
    'previous_value',
    'new_value',
])
ExternalDriveBackupStatusChangedDetails._all_fields_ = [
    ('desktop_device_session_info', ExternalDriveBackupStatusChangedDetails.desktop_device_session_info.validator),
    ('previous_value', ExternalDriveBackupStatusChangedDetails.previous_value.validator),
    ('new_value', ExternalDriveBackupStatusChangedDetails.new_value.validator),
]

ExternalDriveBackupStatusChangedType.description.validator = bv.String()
ExternalDriveBackupStatusChangedType._all_field_names_ = set(['description'])
ExternalDriveBackupStatusChangedType._all_fields_ = [('description', ExternalDriveBackupStatusChangedType.description.validator)]

ExternalSharingCreateReportDetails._all_field_names_ = set([])
ExternalSharingCreateReportDetails._all_fields_ = []

ExternalSharingCreateReportType.description.validator = bv.String()
ExternalSharingCreateReportType._all_field_names_ = set(['description'])
ExternalSharingCreateReportType._all_fields_ = [('description', ExternalSharingCreateReportType.description.validator)]

ExternalSharingReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator
ExternalSharingReportFailedDetails._all_field_names_ = set(['failure_reason'])
ExternalSharingReportFailedDetails._all_fields_ = [('failure_reason', ExternalSharingReportFailedDetails.failure_reason.validator)]

ExternalSharingReportFailedType.description.validator = bv.String()
ExternalSharingReportFailedType._all_field_names_ = set(['description'])
ExternalSharingReportFailedType._all_fields_ = [('description', ExternalSharingReportFailedType.description.validator)]

ExternalUserLogInfo.user_identifier.validator = bv.String()
ExternalUserLogInfo.identifier_type.validator = IdentifierType_validator
ExternalUserLogInfo._all_field_names_ = set([
    'user_identifier',
    'identifier_type',
])
ExternalUserLogInfo._all_fields_ = [
    ('user_identifier', ExternalUserLogInfo.user_identifier.validator),
    ('identifier_type', ExternalUserLogInfo.identifier_type.validator),
]

FailureDetailsLogInfo.user_friendly_message.validator = bv.Nullable(bv.String())
FailureDetailsLogInfo.technical_error_message.validator = bv.Nullable(bv.String())
FailureDetailsLogInfo._all_field_names_ = set([
    'user_friendly_message',
    'technical_error_message',
])
FailureDetailsLogInfo._all_fields_ = [
    ('user_friendly_message', FailureDetailsLogInfo.user_friendly_message.validator),
    ('technical_error_message', FailureDetailsLogInfo.technical_error_message.validator),
]

FedAdminRole._enterprise_admin_validator = bv.Void()
FedAdminRole._not_enterprise_admin_validator = bv.Void()
FedAdminRole._other_validator = bv.Void()
FedAdminRole._tagmap = {
    'enterprise_admin': FedAdminRole._enterprise_admin_validator,
    'not_enterprise_admin': FedAdminRole._not_enterprise_admin_validator,
    'other': FedAdminRole._other_validator,
}

FedAdminRole.enterprise_admin = FedAdminRole('enterprise_admin')
FedAdminRole.not_enterprise_admin = FedAdminRole('not_enterprise_admin')
FedAdminRole.other = FedAdminRole('other')

FedExtraDetails._organization_validator = OrganizationDetails_validator
FedExtraDetails._team_validator = TeamDetails_validator
FedExtraDetails._other_validator = bv.Void()
FedExtraDetails._tagmap = {
    'organization': FedExtraDetails._organization_validator,
    'team': FedExtraDetails._team_validator,
    'other': FedExtraDetails._other_validator,
}

FedExtraDetails.other = FedExtraDetails('other')

FedHandshakeAction._accepted_invite_validator = bv.Void()
FedHandshakeAction._canceled_invite_validator = bv.Void()
FedHandshakeAction._invite_expired_validator = bv.Void()
FedHandshakeAction._invited_validator = bv.Void()
FedHandshakeAction._rejected_invite_validator = bv.Void()
FedHandshakeAction._removed_team_validator = bv.Void()
FedHandshakeAction._other_validator = bv.Void()
FedHandshakeAction._tagmap = {
    'accepted_invite': FedHandshakeAction._accepted_invite_validator,
    'canceled_invite': FedHandshakeAction._canceled_invite_validator,
    'invite_expired': FedHandshakeAction._invite_expired_validator,
    'invited': FedHandshakeAction._invited_validator,
    'rejected_invite': FedHandshakeAction._rejected_invite_validator,
    'removed_team': FedHandshakeAction._removed_team_validator,
    'other': FedHandshakeAction._other_validator,
}

FedHandshakeAction.accepted_invite = FedHandshakeAction('accepted_invite')
FedHandshakeAction.canceled_invite = FedHandshakeAction('canceled_invite')
FedHandshakeAction.invite_expired = FedHandshakeAction('invite_expired')
FedHandshakeAction.invited = FedHandshakeAction('invited')
FedHandshakeAction.rejected_invite = FedHandshakeAction('rejected_invite')
FedHandshakeAction.removed_team = FedHandshakeAction('removed_team')
FedHandshakeAction.other = FedHandshakeAction('other')

FederationStatusChangeAdditionalInfo._connected_team_name_validator = ConnectedTeamName_validator
FederationStatusChangeAdditionalInfo._non_trusted_team_details_validator = NonTrustedTeamDetails_validator
FederationStatusChangeAdditionalInfo._organization_name_validator = OrganizationName_validator
FederationStatusChangeAdditionalInfo._other_validator = bv.Void()
FederationStatusChangeAdditionalInfo._tagmap = {
    'connected_team_name': FederationStatusChangeAdditionalInfo._connected_team_name_validator,
    'non_trusted_team_details': FederationStatusChangeAdditionalInfo._non_trusted_team_details_validator,
    'organization_name': FederationStatusChangeAdditionalInfo._organization_name_validator,
    'other': FederationStatusChangeAdditionalInfo._other_validator,
}

FederationStatusChangeAdditionalInfo.other = FederationStatusChangeAdditionalInfo('other')

FileAddCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileAddCommentDetails._all_field_names_ = set(['comment_text'])
FileAddCommentDetails._all_fields_ = [('comment_text', FileAddCommentDetails.comment_text.validator)]

FileAddCommentType.description.validator = bv.String()
FileAddCommentType._all_field_names_ = set(['description'])
FileAddCommentType._all_fields_ = [('description', FileAddCommentType.description.validator)]

FileAddDetails._all_field_names_ = set([])
FileAddDetails._all_fields_ = []

FileAddType.description.validator = bv.String()
FileAddType._all_field_names_ = set(['description'])
FileAddType._all_fields_ = [('description', FileAddType.description.validator)]

FileChangeCommentSubscriptionDetails.new_value.validator = FileCommentNotificationPolicy_validator
FileChangeCommentSubscriptionDetails.previous_value.validator = bv.Nullable(FileCommentNotificationPolicy_validator)
FileChangeCommentSubscriptionDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FileChangeCommentSubscriptionDetails._all_fields_ = [
    ('new_value', FileChangeCommentSubscriptionDetails.new_value.validator),
    ('previous_value', FileChangeCommentSubscriptionDetails.previous_value.validator),
]

FileChangeCommentSubscriptionType.description.validator = bv.String()
FileChangeCommentSubscriptionType._all_field_names_ = set(['description'])
FileChangeCommentSubscriptionType._all_fields_ = [('description', FileChangeCommentSubscriptionType.description.validator)]

FileCommentNotificationPolicy._disabled_validator = bv.Void()
FileCommentNotificationPolicy._enabled_validator = bv.Void()
FileCommentNotificationPolicy._other_validator = bv.Void()
FileCommentNotificationPolicy._tagmap = {
    'disabled': FileCommentNotificationPolicy._disabled_validator,
    'enabled': FileCommentNotificationPolicy._enabled_validator,
    'other': FileCommentNotificationPolicy._other_validator,
}

FileCommentNotificationPolicy.disabled = FileCommentNotificationPolicy('disabled')
FileCommentNotificationPolicy.enabled = FileCommentNotificationPolicy('enabled')
FileCommentNotificationPolicy.other = FileCommentNotificationPolicy('other')

FileCommentsChangePolicyDetails.new_value.validator = FileCommentsPolicy_validator
FileCommentsChangePolicyDetails.previous_value.validator = bv.Nullable(FileCommentsPolicy_validator)
FileCommentsChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FileCommentsChangePolicyDetails._all_fields_ = [
    ('new_value', FileCommentsChangePolicyDetails.new_value.validator),
    ('previous_value', FileCommentsChangePolicyDetails.previous_value.validator),
]

FileCommentsChangePolicyType.description.validator = bv.String()
FileCommentsChangePolicyType._all_field_names_ = set(['description'])
FileCommentsChangePolicyType._all_fields_ = [('description', FileCommentsChangePolicyType.description.validator)]

FileCommentsPolicy._disabled_validator = bv.Void()
FileCommentsPolicy._enabled_validator = bv.Void()
FileCommentsPolicy._other_validator = bv.Void()
FileCommentsPolicy._tagmap = {
    'disabled': FileCommentsPolicy._disabled_validator,
    'enabled': FileCommentsPolicy._enabled_validator,
    'other': FileCommentsPolicy._other_validator,
}

FileCommentsPolicy.disabled = FileCommentsPolicy('disabled')
FileCommentsPolicy.enabled = FileCommentsPolicy('enabled')
FileCommentsPolicy.other = FileCommentsPolicy('other')

FileCopyDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator)
FileCopyDetails._all_field_names_ = set(['relocate_action_details'])
FileCopyDetails._all_fields_ = [('relocate_action_details', FileCopyDetails.relocate_action_details.validator)]

FileCopyType.description.validator = bv.String()
FileCopyType._all_field_names_ = set(['description'])
FileCopyType._all_fields_ = [('description', FileCopyType.description.validator)]

FileDeleteCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileDeleteCommentDetails._all_field_names_ = set(['comment_text'])
FileDeleteCommentDetails._all_fields_ = [('comment_text', FileDeleteCommentDetails.comment_text.validator)]

FileDeleteCommentType.description.validator = bv.String()
FileDeleteCommentType._all_field_names_ = set(['description'])
FileDeleteCommentType._all_fields_ = [('description', FileDeleteCommentType.description.validator)]

FileDeleteDetails._all_field_names_ = set([])
FileDeleteDetails._all_fields_ = []

FileDeleteType.description.validator = bv.String()
FileDeleteType._all_field_names_ = set(['description'])
FileDeleteType._all_fields_ = [('description', FileDeleteType.description.validator)]

FileDownloadDetails._all_field_names_ = set([])
FileDownloadDetails._all_fields_ = []

FileDownloadType.description.validator = bv.String()
FileDownloadType._all_field_names_ = set(['description'])
FileDownloadType._all_fields_ = [('description', FileDownloadType.description.validator)]

FileEditCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileEditCommentDetails.previous_comment_text.validator = bv.String()
FileEditCommentDetails._all_field_names_ = set([
    'comment_text',
    'previous_comment_text',
])
FileEditCommentDetails._all_fields_ = [
    ('comment_text', FileEditCommentDetails.comment_text.validator),
    ('previous_comment_text', FileEditCommentDetails.previous_comment_text.validator),
]

FileEditCommentType.description.validator = bv.String()
FileEditCommentType._all_field_names_ = set(['description'])
FileEditCommentType._all_fields_ = [('description', FileEditCommentType.description.validator)]

FileEditDetails._all_field_names_ = set([])
FileEditDetails._all_fields_ = []

FileEditType.description.validator = bv.String()
FileEditType._all_field_names_ = set(['description'])
FileEditType._all_fields_ = [('description', FileEditType.description.validator)]

FileGetCopyReferenceDetails._all_field_names_ = set([])
FileGetCopyReferenceDetails._all_fields_ = []

FileGetCopyReferenceType.description.validator = bv.String()
FileGetCopyReferenceType._all_field_names_ = set(['description'])
FileGetCopyReferenceType._all_fields_ = [('description', FileGetCopyReferenceType.description.validator)]

FileLikeCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileLikeCommentDetails._all_field_names_ = set(['comment_text'])
FileLikeCommentDetails._all_fields_ = [('comment_text', FileLikeCommentDetails.comment_text.validator)]

FileLikeCommentType.description.validator = bv.String()
FileLikeCommentType._all_field_names_ = set(['description'])
FileLikeCommentType._all_fields_ = [('description', FileLikeCommentType.description.validator)]

FileLockingLockStatusChangedDetails.previous_value.validator = LockStatus_validator
FileLockingLockStatusChangedDetails.new_value.validator = LockStatus_validator
FileLockingLockStatusChangedDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
FileLockingLockStatusChangedDetails._all_fields_ = [
    ('previous_value', FileLockingLockStatusChangedDetails.previous_value.validator),
    ('new_value', FileLockingLockStatusChangedDetails.new_value.validator),
]

FileLockingLockStatusChangedType.description.validator = bv.String()
FileLockingLockStatusChangedType._all_field_names_ = set(['description'])
FileLockingLockStatusChangedType._all_fields_ = [('description', FileLockingLockStatusChangedType.description.validator)]

FileLockingPolicyChangedDetails.new_value.validator = team_policies.FileLockingPolicyState_validator
FileLockingPolicyChangedDetails.previous_value.validator = team_policies.FileLockingPolicyState_validator
FileLockingPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FileLockingPolicyChangedDetails._all_fields_ = [
    ('new_value', FileLockingPolicyChangedDetails.new_value.validator),
    ('previous_value', FileLockingPolicyChangedDetails.previous_value.validator),
]

FileLockingPolicyChangedType.description.validator = bv.String()
FileLockingPolicyChangedType._all_field_names_ = set(['description'])
FileLockingPolicyChangedType._all_fields_ = [('description', FileLockingPolicyChangedType.description.validator)]

FileOrFolderLogInfo.path.validator = PathLogInfo_validator
FileOrFolderLogInfo.display_name.validator = bv.Nullable(bv.String())
FileOrFolderLogInfo.file_id.validator = bv.Nullable(bv.String())
FileOrFolderLogInfo.file_size.validator = bv.Nullable(bv.UInt64())
FileOrFolderLogInfo._all_field_names_ = set([
    'path',
    'display_name',
    'file_id',
    'file_size',
])
FileOrFolderLogInfo._all_fields_ = [
    ('path', FileOrFolderLogInfo.path.validator),
    ('display_name', FileOrFolderLogInfo.display_name.validator),
    ('file_id', FileOrFolderLogInfo.file_id.validator),
    ('file_size', FileOrFolderLogInfo.file_size.validator),
]

FileLogInfo._all_field_names_ = FileOrFolderLogInfo._all_field_names_.union(set([]))
FileLogInfo._all_fields_ = FileOrFolderLogInfo._all_fields_ + []

FileMoveDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator)
FileMoveDetails._all_field_names_ = set(['relocate_action_details'])
FileMoveDetails._all_fields_ = [('relocate_action_details', FileMoveDetails.relocate_action_details.validator)]

FileMoveType.description.validator = bv.String()
FileMoveType._all_field_names_ = set(['description'])
FileMoveType._all_fields_ = [('description', FileMoveType.description.validator)]

FilePermanentlyDeleteDetails._all_field_names_ = set([])
FilePermanentlyDeleteDetails._all_fields_ = []

FilePermanentlyDeleteType.description.validator = bv.String()
FilePermanentlyDeleteType._all_field_names_ = set(['description'])
FilePermanentlyDeleteType._all_fields_ = [('description', FilePermanentlyDeleteType.description.validator)]

FilePreviewDetails._all_field_names_ = set([])
FilePreviewDetails._all_fields_ = []

FilePreviewType.description.validator = bv.String()
FilePreviewType._all_field_names_ = set(['description'])
FilePreviewType._all_fields_ = [('description', FilePreviewType.description.validator)]

FileProviderMigrationPolicyChangedDetails.new_value.validator = team_policies.FileProviderMigrationPolicyState_validator
FileProviderMigrationPolicyChangedDetails.previous_value.validator = team_policies.FileProviderMigrationPolicyState_validator
FileProviderMigrationPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FileProviderMigrationPolicyChangedDetails._all_fields_ = [
    ('new_value', FileProviderMigrationPolicyChangedDetails.new_value.validator),
    ('previous_value', FileProviderMigrationPolicyChangedDetails.previous_value.validator),
]

FileProviderMigrationPolicyChangedType.description.validator = bv.String()
FileProviderMigrationPolicyChangedType._all_field_names_ = set(['description'])
FileProviderMigrationPolicyChangedType._all_fields_ = [('description', FileProviderMigrationPolicyChangedType.description.validator)]

FileRenameDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator)
FileRenameDetails._all_field_names_ = set(['relocate_action_details'])
FileRenameDetails._all_fields_ = [('relocate_action_details', FileRenameDetails.relocate_action_details.validator)]

FileRenameType.description.validator = bv.String()
FileRenameType._all_field_names_ = set(['description'])
FileRenameType._all_fields_ = [('description', FileRenameType.description.validator)]

FileRequestChangeDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator)
FileRequestChangeDetails.previous_details.validator = bv.Nullable(FileRequestDetails_validator)
FileRequestChangeDetails.new_details.validator = FileRequestDetails_validator
FileRequestChangeDetails._all_field_names_ = set([
    'file_request_id',
    'previous_details',
    'new_details',
])
FileRequestChangeDetails._all_fields_ = [
    ('file_request_id', FileRequestChangeDetails.file_request_id.validator),
    ('previous_details', FileRequestChangeDetails.previous_details.validator),
    ('new_details', FileRequestChangeDetails.new_details.validator),
]

FileRequestChangeType.description.validator = bv.String()
FileRequestChangeType._all_field_names_ = set(['description'])
FileRequestChangeType._all_fields_ = [('description', FileRequestChangeType.description.validator)]

FileRequestCloseDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator)
FileRequestCloseDetails.previous_details.validator = bv.Nullable(FileRequestDetails_validator)
FileRequestCloseDetails._all_field_names_ = set([
    'file_request_id',
    'previous_details',
])
FileRequestCloseDetails._all_fields_ = [
    ('file_request_id', FileRequestCloseDetails.file_request_id.validator),
    ('previous_details', FileRequestCloseDetails.previous_details.validator),
]

FileRequestCloseType.description.validator = bv.String()
FileRequestCloseType._all_field_names_ = set(['description'])
FileRequestCloseType._all_fields_ = [('description', FileRequestCloseType.description.validator)]

FileRequestCreateDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator)
FileRequestCreateDetails.request_details.validator = bv.Nullable(FileRequestDetails_validator)
FileRequestCreateDetails._all_field_names_ = set([
    'file_request_id',
    'request_details',
])
FileRequestCreateDetails._all_fields_ = [
    ('file_request_id', FileRequestCreateDetails.file_request_id.validator),
    ('request_details', FileRequestCreateDetails.request_details.validator),
]

FileRequestCreateType.description.validator = bv.String()
FileRequestCreateType._all_field_names_ = set(['description'])
FileRequestCreateType._all_fields_ = [('description', FileRequestCreateType.description.validator)]

FileRequestDeadline.deadline.validator = bv.Nullable(common.DropboxTimestamp_validator)
FileRequestDeadline.allow_late_uploads.validator = bv.Nullable(bv.String())
FileRequestDeadline._all_field_names_ = set([
    'deadline',
    'allow_late_uploads',
])
FileRequestDeadline._all_fields_ = [
    ('deadline', FileRequestDeadline.deadline.validator),
    ('allow_late_uploads', FileRequestDeadline.allow_late_uploads.validator),
]

FileRequestDeleteDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator)
FileRequestDeleteDetails.previous_details.validator = bv.Nullable(FileRequestDetails_validator)
FileRequestDeleteDetails._all_field_names_ = set([
    'file_request_id',
    'previous_details',
])
FileRequestDeleteDetails._all_fields_ = [
    ('file_request_id', FileRequestDeleteDetails.file_request_id.validator),
    ('previous_details', FileRequestDeleteDetails.previous_details.validator),
]

FileRequestDeleteType.description.validator = bv.String()
FileRequestDeleteType._all_field_names_ = set(['description'])
FileRequestDeleteType._all_fields_ = [('description', FileRequestDeleteType.description.validator)]

FileRequestDetails.asset_index.validator = bv.UInt64()
FileRequestDetails.deadline.validator = bv.Nullable(FileRequestDeadline_validator)
FileRequestDetails._all_field_names_ = set([
    'asset_index',
    'deadline',
])
FileRequestDetails._all_fields_ = [
    ('asset_index', FileRequestDetails.asset_index.validator),
    ('deadline', FileRequestDetails.deadline.validator),
]

FileRequestReceiveFileDetails.file_request_id.validator = bv.Nullable(file_requests.FileRequestId_validator)
FileRequestReceiveFileDetails.file_request_details.validator = bv.Nullable(FileRequestDetails_validator)
FileRequestReceiveFileDetails.submitted_file_names.validator = bv.List(bv.String())
FileRequestReceiveFileDetails.submitter_name.validator = bv.Nullable(common.DisplayNameLegacy_validator)
FileRequestReceiveFileDetails.submitter_email.validator = bv.Nullable(EmailAddress_validator)
FileRequestReceiveFileDetails._all_field_names_ = set([
    'file_request_id',
    'file_request_details',
    'submitted_file_names',
    'submitter_name',
    'submitter_email',
])
FileRequestReceiveFileDetails._all_fields_ = [
    ('file_request_id', FileRequestReceiveFileDetails.file_request_id.validator),
    ('file_request_details', FileRequestReceiveFileDetails.file_request_details.validator),
    ('submitted_file_names', FileRequestReceiveFileDetails.submitted_file_names.validator),
    ('submitter_name', FileRequestReceiveFileDetails.submitter_name.validator),
    ('submitter_email', FileRequestReceiveFileDetails.submitter_email.validator),
]

FileRequestReceiveFileType.description.validator = bv.String()
FileRequestReceiveFileType._all_field_names_ = set(['description'])
FileRequestReceiveFileType._all_fields_ = [('description', FileRequestReceiveFileType.description.validator)]

FileRequestsChangePolicyDetails.new_value.validator = FileRequestsPolicy_validator
FileRequestsChangePolicyDetails.previous_value.validator = bv.Nullable(FileRequestsPolicy_validator)
FileRequestsChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FileRequestsChangePolicyDetails._all_fields_ = [
    ('new_value', FileRequestsChangePolicyDetails.new_value.validator),
    ('previous_value', FileRequestsChangePolicyDetails.previous_value.validator),
]

FileRequestsChangePolicyType.description.validator = bv.String()
FileRequestsChangePolicyType._all_field_names_ = set(['description'])
FileRequestsChangePolicyType._all_fields_ = [('description', FileRequestsChangePolicyType.description.validator)]

FileRequestsEmailsEnabledDetails._all_field_names_ = set([])
FileRequestsEmailsEnabledDetails._all_fields_ = []

FileRequestsEmailsEnabledType.description.validator = bv.String()
FileRequestsEmailsEnabledType._all_field_names_ = set(['description'])
FileRequestsEmailsEnabledType._all_fields_ = [('description', FileRequestsEmailsEnabledType.description.validator)]

FileRequestsEmailsRestrictedToTeamOnlyDetails._all_field_names_ = set([])
FileRequestsEmailsRestrictedToTeamOnlyDetails._all_fields_ = []

FileRequestsEmailsRestrictedToTeamOnlyType.description.validator = bv.String()
FileRequestsEmailsRestrictedToTeamOnlyType._all_field_names_ = set(['description'])
FileRequestsEmailsRestrictedToTeamOnlyType._all_fields_ = [('description', FileRequestsEmailsRestrictedToTeamOnlyType.description.validator)]

FileRequestsPolicy._disabled_validator = bv.Void()
FileRequestsPolicy._enabled_validator = bv.Void()
FileRequestsPolicy._other_validator = bv.Void()
FileRequestsPolicy._tagmap = {
    'disabled': FileRequestsPolicy._disabled_validator,
    'enabled': FileRequestsPolicy._enabled_validator,
    'other': FileRequestsPolicy._other_validator,
}

FileRequestsPolicy.disabled = FileRequestsPolicy('disabled')
FileRequestsPolicy.enabled = FileRequestsPolicy('enabled')
FileRequestsPolicy.other = FileRequestsPolicy('other')

FileResolveCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileResolveCommentDetails._all_field_names_ = set(['comment_text'])
FileResolveCommentDetails._all_fields_ = [('comment_text', FileResolveCommentDetails.comment_text.validator)]

FileResolveCommentType.description.validator = bv.String()
FileResolveCommentType._all_field_names_ = set(['description'])
FileResolveCommentType._all_fields_ = [('description', FileResolveCommentType.description.validator)]

FileRestoreDetails._all_field_names_ = set([])
FileRestoreDetails._all_fields_ = []

FileRestoreType.description.validator = bv.String()
FileRestoreType._all_field_names_ = set(['description'])
FileRestoreType._all_fields_ = [('description', FileRestoreType.description.validator)]

FileRevertDetails._all_field_names_ = set([])
FileRevertDetails._all_fields_ = []

FileRevertType.description.validator = bv.String()
FileRevertType._all_field_names_ = set(['description'])
FileRevertType._all_fields_ = [('description', FileRevertType.description.validator)]

FileRollbackChangesDetails._all_field_names_ = set([])
FileRollbackChangesDetails._all_fields_ = []

FileRollbackChangesType.description.validator = bv.String()
FileRollbackChangesType._all_field_names_ = set(['description'])
FileRollbackChangesType._all_fields_ = [('description', FileRollbackChangesType.description.validator)]

FileSaveCopyReferenceDetails.relocate_action_details.validator = bv.List(RelocateAssetReferencesLogInfo_validator)
FileSaveCopyReferenceDetails._all_field_names_ = set(['relocate_action_details'])
FileSaveCopyReferenceDetails._all_fields_ = [('relocate_action_details', FileSaveCopyReferenceDetails.relocate_action_details.validator)]

FileSaveCopyReferenceType.description.validator = bv.String()
FileSaveCopyReferenceType._all_field_names_ = set(['description'])
FileSaveCopyReferenceType._all_fields_ = [('description', FileSaveCopyReferenceType.description.validator)]

FileTransfersFileAddDetails.file_transfer_id.validator = bv.String()
FileTransfersFileAddDetails._all_field_names_ = set(['file_transfer_id'])
FileTransfersFileAddDetails._all_fields_ = [('file_transfer_id', FileTransfersFileAddDetails.file_transfer_id.validator)]

FileTransfersFileAddType.description.validator = bv.String()
FileTransfersFileAddType._all_field_names_ = set(['description'])
FileTransfersFileAddType._all_fields_ = [('description', FileTransfersFileAddType.description.validator)]

FileTransfersPolicy._disabled_validator = bv.Void()
FileTransfersPolicy._enabled_validator = bv.Void()
FileTransfersPolicy._other_validator = bv.Void()
FileTransfersPolicy._tagmap = {
    'disabled': FileTransfersPolicy._disabled_validator,
    'enabled': FileTransfersPolicy._enabled_validator,
    'other': FileTransfersPolicy._other_validator,
}

FileTransfersPolicy.disabled = FileTransfersPolicy('disabled')
FileTransfersPolicy.enabled = FileTransfersPolicy('enabled')
FileTransfersPolicy.other = FileTransfersPolicy('other')

FileTransfersPolicyChangedDetails.new_value.validator = FileTransfersPolicy_validator
FileTransfersPolicyChangedDetails.previous_value.validator = FileTransfersPolicy_validator
FileTransfersPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FileTransfersPolicyChangedDetails._all_fields_ = [
    ('new_value', FileTransfersPolicyChangedDetails.new_value.validator),
    ('previous_value', FileTransfersPolicyChangedDetails.previous_value.validator),
]

FileTransfersPolicyChangedType.description.validator = bv.String()
FileTransfersPolicyChangedType._all_field_names_ = set(['description'])
FileTransfersPolicyChangedType._all_fields_ = [('description', FileTransfersPolicyChangedType.description.validator)]

FileTransfersTransferDeleteDetails.file_transfer_id.validator = bv.String()
FileTransfersTransferDeleteDetails._all_field_names_ = set(['file_transfer_id'])
FileTransfersTransferDeleteDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferDeleteDetails.file_transfer_id.validator)]

FileTransfersTransferDeleteType.description.validator = bv.String()
FileTransfersTransferDeleteType._all_field_names_ = set(['description'])
FileTransfersTransferDeleteType._all_fields_ = [('description', FileTransfersTransferDeleteType.description.validator)]

FileTransfersTransferDownloadDetails.file_transfer_id.validator = bv.String()
FileTransfersTransferDownloadDetails._all_field_names_ = set(['file_transfer_id'])
FileTransfersTransferDownloadDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferDownloadDetails.file_transfer_id.validator)]

FileTransfersTransferDownloadType.description.validator = bv.String()
FileTransfersTransferDownloadType._all_field_names_ = set(['description'])
FileTransfersTransferDownloadType._all_fields_ = [('description', FileTransfersTransferDownloadType.description.validator)]

FileTransfersTransferSendDetails.file_transfer_id.validator = bv.String()
FileTransfersTransferSendDetails._all_field_names_ = set(['file_transfer_id'])
FileTransfersTransferSendDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferSendDetails.file_transfer_id.validator)]

FileTransfersTransferSendType.description.validator = bv.String()
FileTransfersTransferSendType._all_field_names_ = set(['description'])
FileTransfersTransferSendType._all_fields_ = [('description', FileTransfersTransferSendType.description.validator)]

FileTransfersTransferViewDetails.file_transfer_id.validator = bv.String()
FileTransfersTransferViewDetails._all_field_names_ = set(['file_transfer_id'])
FileTransfersTransferViewDetails._all_fields_ = [('file_transfer_id', FileTransfersTransferViewDetails.file_transfer_id.validator)]

FileTransfersTransferViewType.description.validator = bv.String()
FileTransfersTransferViewType._all_field_names_ = set(['description'])
FileTransfersTransferViewType._all_fields_ = [('description', FileTransfersTransferViewType.description.validator)]

FileUnlikeCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileUnlikeCommentDetails._all_field_names_ = set(['comment_text'])
FileUnlikeCommentDetails._all_fields_ = [('comment_text', FileUnlikeCommentDetails.comment_text.validator)]

FileUnlikeCommentType.description.validator = bv.String()
FileUnlikeCommentType._all_field_names_ = set(['description'])
FileUnlikeCommentType._all_fields_ = [('description', FileUnlikeCommentType.description.validator)]

FileUnresolveCommentDetails.comment_text.validator = bv.Nullable(bv.String())
FileUnresolveCommentDetails._all_field_names_ = set(['comment_text'])
FileUnresolveCommentDetails._all_fields_ = [('comment_text', FileUnresolveCommentDetails.comment_text.validator)]

FileUnresolveCommentType.description.validator = bv.String()
FileUnresolveCommentType._all_field_names_ = set(['description'])
FileUnresolveCommentType._all_fields_ = [('description', FileUnresolveCommentType.description.validator)]

FolderLinkRestrictionPolicy._disabled_validator = bv.Void()
FolderLinkRestrictionPolicy._enabled_validator = bv.Void()
FolderLinkRestrictionPolicy._other_validator = bv.Void()
FolderLinkRestrictionPolicy._tagmap = {
    'disabled': FolderLinkRestrictionPolicy._disabled_validator,
    'enabled': FolderLinkRestrictionPolicy._enabled_validator,
    'other': FolderLinkRestrictionPolicy._other_validator,
}

FolderLinkRestrictionPolicy.disabled = FolderLinkRestrictionPolicy('disabled')
FolderLinkRestrictionPolicy.enabled = FolderLinkRestrictionPolicy('enabled')
FolderLinkRestrictionPolicy.other = FolderLinkRestrictionPolicy('other')

FolderLinkRestrictionPolicyChangedDetails.new_value.validator = FolderLinkRestrictionPolicy_validator
FolderLinkRestrictionPolicyChangedDetails.previous_value.validator = FolderLinkRestrictionPolicy_validator
FolderLinkRestrictionPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
FolderLinkRestrictionPolicyChangedDetails._all_fields_ = [
    ('new_value', FolderLinkRestrictionPolicyChangedDetails.new_value.validator),
    ('previous_value', FolderLinkRestrictionPolicyChangedDetails.previous_value.validator),
]

FolderLinkRestrictionPolicyChangedType.description.validator = bv.String()
FolderLinkRestrictionPolicyChangedType._all_field_names_ = set(['description'])
FolderLinkRestrictionPolicyChangedType._all_fields_ = [('description', FolderLinkRestrictionPolicyChangedType.description.validator)]

FolderLogInfo.file_count.validator = bv.Nullable(bv.UInt64())
FolderLogInfo._all_field_names_ = FileOrFolderLogInfo._all_field_names_.union(set(['file_count']))
FolderLogInfo._all_fields_ = FileOrFolderLogInfo._all_fields_ + [('file_count', FolderLogInfo.file_count.validator)]

FolderOverviewDescriptionChangedDetails.folder_overview_location_asset.validator = bv.UInt64()
FolderOverviewDescriptionChangedDetails._all_field_names_ = set(['folder_overview_location_asset'])
FolderOverviewDescriptionChangedDetails._all_fields_ = [('folder_overview_location_asset', FolderOverviewDescriptionChangedDetails.folder_overview_location_asset.validator)]

FolderOverviewDescriptionChangedType.description.validator = bv.String()
FolderOverviewDescriptionChangedType._all_field_names_ = set(['description'])
FolderOverviewDescriptionChangedType._all_fields_ = [('description', FolderOverviewDescriptionChangedType.description.validator)]

FolderOverviewItemPinnedDetails.folder_overview_location_asset.validator = bv.UInt64()
FolderOverviewItemPinnedDetails.pinned_items_asset_indices.validator = bv.List(bv.UInt64())
FolderOverviewItemPinnedDetails._all_field_names_ = set([
    'folder_overview_location_asset',
    'pinned_items_asset_indices',
])
FolderOverviewItemPinnedDetails._all_fields_ = [
    ('folder_overview_location_asset', FolderOverviewItemPinnedDetails.folder_overview_location_asset.validator),
    ('pinned_items_asset_indices', FolderOverviewItemPinnedDetails.pinned_items_asset_indices.validator),
]

FolderOverviewItemPinnedType.description.validator = bv.String()
FolderOverviewItemPinnedType._all_field_names_ = set(['description'])
FolderOverviewItemPinnedType._all_fields_ = [('description', FolderOverviewItemPinnedType.description.validator)]

FolderOverviewItemUnpinnedDetails.folder_overview_location_asset.validator = bv.UInt64()
FolderOverviewItemUnpinnedDetails.pinned_items_asset_indices.validator = bv.List(bv.UInt64())
FolderOverviewItemUnpinnedDetails._all_field_names_ = set([
    'folder_overview_location_asset',
    'pinned_items_asset_indices',
])
FolderOverviewItemUnpinnedDetails._all_fields_ = [
    ('folder_overview_location_asset', FolderOverviewItemUnpinnedDetails.folder_overview_location_asset.validator),
    ('pinned_items_asset_indices', FolderOverviewItemUnpinnedDetails.pinned_items_asset_indices.validator),
]

FolderOverviewItemUnpinnedType.description.validator = bv.String()
FolderOverviewItemUnpinnedType._all_field_names_ = set(['description'])
FolderOverviewItemUnpinnedType._all_fields_ = [('description', FolderOverviewItemUnpinnedType.description.validator)]

GeoLocationLogInfo.city.validator = bv.Nullable(bv.String())
GeoLocationLogInfo.region.validator = bv.Nullable(bv.String())
GeoLocationLogInfo.country.validator = bv.Nullable(bv.String())
GeoLocationLogInfo.ip_address.validator = IpAddress_validator
GeoLocationLogInfo._all_field_names_ = set([
    'city',
    'region',
    'country',
    'ip_address',
])
GeoLocationLogInfo._all_fields_ = [
    ('city', GeoLocationLogInfo.city.validator),
    ('region', GeoLocationLogInfo.region.validator),
    ('country', GeoLocationLogInfo.country.validator),
    ('ip_address', GeoLocationLogInfo.ip_address.validator),
]

GetTeamEventsArg.limit.validator = bv.UInt32(min_value=1, max_value=1000)
GetTeamEventsArg.account_id.validator = bv.Nullable(users_common.AccountId_validator)
GetTeamEventsArg.time.validator = bv.Nullable(team_common.TimeRange_validator)
GetTeamEventsArg.category.validator = bv.Nullable(EventCategory_validator)
GetTeamEventsArg.event_type.validator = bv.Nullable(EventTypeArg_validator)
GetTeamEventsArg._all_field_names_ = set([
    'limit',
    'account_id',
    'time',
    'category',
    'event_type',
])
GetTeamEventsArg._all_fields_ = [
    ('limit', GetTeamEventsArg.limit.validator),
    ('account_id', GetTeamEventsArg.account_id.validator),
    ('time', GetTeamEventsArg.time.validator),
    ('category', GetTeamEventsArg.category.validator),
    ('event_type', GetTeamEventsArg.event_type.validator),
]

GetTeamEventsContinueArg.cursor.validator = bv.String()
GetTeamEventsContinueArg._all_field_names_ = set(['cursor'])
GetTeamEventsContinueArg._all_fields_ = [('cursor', GetTeamEventsContinueArg.cursor.validator)]

GetTeamEventsContinueError._bad_cursor_validator = bv.Void()
GetTeamEventsContinueError._reset_validator = common.DropboxTimestamp_validator
GetTeamEventsContinueError._other_validator = bv.Void()
GetTeamEventsContinueError._tagmap = {
    'bad_cursor': GetTeamEventsContinueError._bad_cursor_validator,
    'reset': GetTeamEventsContinueError._reset_validator,
    'other': GetTeamEventsContinueError._other_validator,
}

GetTeamEventsContinueError.bad_cursor = GetTeamEventsContinueError('bad_cursor')
GetTeamEventsContinueError.other = GetTeamEventsContinueError('other')

GetTeamEventsError._account_id_not_found_validator = bv.Void()
GetTeamEventsError._invalid_time_range_validator = bv.Void()
GetTeamEventsError._invalid_filters_validator = bv.Void()
GetTeamEventsError._other_validator = bv.Void()
GetTeamEventsError._tagmap = {
    'account_id_not_found': GetTeamEventsError._account_id_not_found_validator,
    'invalid_time_range': GetTeamEventsError._invalid_time_range_validator,
    'invalid_filters': GetTeamEventsError._invalid_filters_validator,
    'other': GetTeamEventsError._other_validator,
}

GetTeamEventsError.account_id_not_found = GetTeamEventsError('account_id_not_found')
GetTeamEventsError.invalid_time_range = GetTeamEventsError('invalid_time_range')
GetTeamEventsError.invalid_filters = GetTeamEventsError('invalid_filters')
GetTeamEventsError.other = GetTeamEventsError('other')

GetTeamEventsResult.events.validator = bv.List(TeamEvent_validator)
GetTeamEventsResult.cursor.validator = bv.String()
GetTeamEventsResult.has_more.validator = bv.Boolean()
GetTeamEventsResult._all_field_names_ = set([
    'events',
    'cursor',
    'has_more',
])
GetTeamEventsResult._all_fields_ = [
    ('events', GetTeamEventsResult.events.validator),
    ('cursor', GetTeamEventsResult.cursor.validator),
    ('has_more', GetTeamEventsResult.has_more.validator),
]

GoogleSsoChangePolicyDetails.new_value.validator = GoogleSsoPolicy_validator
GoogleSsoChangePolicyDetails.previous_value.validator = bv.Nullable(GoogleSsoPolicy_validator)
GoogleSsoChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
GoogleSsoChangePolicyDetails._all_fields_ = [
    ('new_value', GoogleSsoChangePolicyDetails.new_value.validator),
    ('previous_value', GoogleSsoChangePolicyDetails.previous_value.validator),
]

GoogleSsoChangePolicyType.description.validator = bv.String()
GoogleSsoChangePolicyType._all_field_names_ = set(['description'])
GoogleSsoChangePolicyType._all_fields_ = [('description', GoogleSsoChangePolicyType.description.validator)]

GoogleSsoPolicy._disabled_validator = bv.Void()
GoogleSsoPolicy._enabled_validator = bv.Void()
GoogleSsoPolicy._other_validator = bv.Void()
GoogleSsoPolicy._tagmap = {
    'disabled': GoogleSsoPolicy._disabled_validator,
    'enabled': GoogleSsoPolicy._enabled_validator,
    'other': GoogleSsoPolicy._other_validator,
}

GoogleSsoPolicy.disabled = GoogleSsoPolicy('disabled')
GoogleSsoPolicy.enabled = GoogleSsoPolicy('enabled')
GoogleSsoPolicy.other = GoogleSsoPolicy('other')

GovernancePolicyAddFolderFailedDetails.governance_policy_id.validator = bv.String()
GovernancePolicyAddFolderFailedDetails.name.validator = bv.String()
GovernancePolicyAddFolderFailedDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyAddFolderFailedDetails.folder.validator = bv.String()
GovernancePolicyAddFolderFailedDetails.reason.validator = bv.Nullable(bv.String())
GovernancePolicyAddFolderFailedDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'folder',
    'reason',
])
GovernancePolicyAddFolderFailedDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyAddFolderFailedDetails.governance_policy_id.validator),
    ('name', GovernancePolicyAddFolderFailedDetails.name.validator),
    ('policy_type', GovernancePolicyAddFolderFailedDetails.policy_type.validator),
    ('folder', GovernancePolicyAddFolderFailedDetails.folder.validator),
    ('reason', GovernancePolicyAddFolderFailedDetails.reason.validator),
]

GovernancePolicyAddFolderFailedType.description.validator = bv.String()
GovernancePolicyAddFolderFailedType._all_field_names_ = set(['description'])
GovernancePolicyAddFolderFailedType._all_fields_ = [('description', GovernancePolicyAddFolderFailedType.description.validator)]

GovernancePolicyAddFoldersDetails.governance_policy_id.validator = bv.String()
GovernancePolicyAddFoldersDetails.name.validator = bv.String()
GovernancePolicyAddFoldersDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyAddFoldersDetails.folders.validator = bv.Nullable(bv.List(bv.String()))
GovernancePolicyAddFoldersDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'folders',
])
GovernancePolicyAddFoldersDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyAddFoldersDetails.governance_policy_id.validator),
    ('name', GovernancePolicyAddFoldersDetails.name.validator),
    ('policy_type', GovernancePolicyAddFoldersDetails.policy_type.validator),
    ('folders', GovernancePolicyAddFoldersDetails.folders.validator),
]

GovernancePolicyAddFoldersType.description.validator = bv.String()
GovernancePolicyAddFoldersType._all_field_names_ = set(['description'])
GovernancePolicyAddFoldersType._all_fields_ = [('description', GovernancePolicyAddFoldersType.description.validator)]

GovernancePolicyContentDisposedDetails.governance_policy_id.validator = bv.String()
GovernancePolicyContentDisposedDetails.name.validator = bv.String()
GovernancePolicyContentDisposedDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyContentDisposedDetails.disposition_type.validator = DispositionActionType_validator
GovernancePolicyContentDisposedDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'disposition_type',
])
GovernancePolicyContentDisposedDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyContentDisposedDetails.governance_policy_id.validator),
    ('name', GovernancePolicyContentDisposedDetails.name.validator),
    ('policy_type', GovernancePolicyContentDisposedDetails.policy_type.validator),
    ('disposition_type', GovernancePolicyContentDisposedDetails.disposition_type.validator),
]

GovernancePolicyContentDisposedType.description.validator = bv.String()
GovernancePolicyContentDisposedType._all_field_names_ = set(['description'])
GovernancePolicyContentDisposedType._all_fields_ = [('description', GovernancePolicyContentDisposedType.description.validator)]

GovernancePolicyCreateDetails.governance_policy_id.validator = bv.String()
GovernancePolicyCreateDetails.name.validator = bv.String()
GovernancePolicyCreateDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyCreateDetails.duration.validator = DurationLogInfo_validator
GovernancePolicyCreateDetails.folders.validator = bv.Nullable(bv.List(bv.String()))
GovernancePolicyCreateDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'duration',
    'folders',
])
GovernancePolicyCreateDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyCreateDetails.governance_policy_id.validator),
    ('name', GovernancePolicyCreateDetails.name.validator),
    ('policy_type', GovernancePolicyCreateDetails.policy_type.validator),
    ('duration', GovernancePolicyCreateDetails.duration.validator),
    ('folders', GovernancePolicyCreateDetails.folders.validator),
]

GovernancePolicyCreateType.description.validator = bv.String()
GovernancePolicyCreateType._all_field_names_ = set(['description'])
GovernancePolicyCreateType._all_fields_ = [('description', GovernancePolicyCreateType.description.validator)]

GovernancePolicyDeleteDetails.governance_policy_id.validator = bv.String()
GovernancePolicyDeleteDetails.name.validator = bv.String()
GovernancePolicyDeleteDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyDeleteDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
])
GovernancePolicyDeleteDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyDeleteDetails.governance_policy_id.validator),
    ('name', GovernancePolicyDeleteDetails.name.validator),
    ('policy_type', GovernancePolicyDeleteDetails.policy_type.validator),
]

GovernancePolicyDeleteType.description.validator = bv.String()
GovernancePolicyDeleteType._all_field_names_ = set(['description'])
GovernancePolicyDeleteType._all_fields_ = [('description', GovernancePolicyDeleteType.description.validator)]

GovernancePolicyEditDetailsDetails.governance_policy_id.validator = bv.String()
GovernancePolicyEditDetailsDetails.name.validator = bv.String()
GovernancePolicyEditDetailsDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyEditDetailsDetails.attribute.validator = bv.String()
GovernancePolicyEditDetailsDetails.previous_value.validator = bv.String()
GovernancePolicyEditDetailsDetails.new_value.validator = bv.String()
GovernancePolicyEditDetailsDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'attribute',
    'previous_value',
    'new_value',
])
GovernancePolicyEditDetailsDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyEditDetailsDetails.governance_policy_id.validator),
    ('name', GovernancePolicyEditDetailsDetails.name.validator),
    ('policy_type', GovernancePolicyEditDetailsDetails.policy_type.validator),
    ('attribute', GovernancePolicyEditDetailsDetails.attribute.validator),
    ('previous_value', GovernancePolicyEditDetailsDetails.previous_value.validator),
    ('new_value', GovernancePolicyEditDetailsDetails.new_value.validator),
]

GovernancePolicyEditDetailsType.description.validator = bv.String()
GovernancePolicyEditDetailsType._all_field_names_ = set(['description'])
GovernancePolicyEditDetailsType._all_fields_ = [('description', GovernancePolicyEditDetailsType.description.validator)]

GovernancePolicyEditDurationDetails.governance_policy_id.validator = bv.String()
GovernancePolicyEditDurationDetails.name.validator = bv.String()
GovernancePolicyEditDurationDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyEditDurationDetails.previous_value.validator = DurationLogInfo_validator
GovernancePolicyEditDurationDetails.new_value.validator = DurationLogInfo_validator
GovernancePolicyEditDurationDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'previous_value',
    'new_value',
])
GovernancePolicyEditDurationDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyEditDurationDetails.governance_policy_id.validator),
    ('name', GovernancePolicyEditDurationDetails.name.validator),
    ('policy_type', GovernancePolicyEditDurationDetails.policy_type.validator),
    ('previous_value', GovernancePolicyEditDurationDetails.previous_value.validator),
    ('new_value', GovernancePolicyEditDurationDetails.new_value.validator),
]

GovernancePolicyEditDurationType.description.validator = bv.String()
GovernancePolicyEditDurationType._all_field_names_ = set(['description'])
GovernancePolicyEditDurationType._all_fields_ = [('description', GovernancePolicyEditDurationType.description.validator)]

GovernancePolicyExportCreatedDetails.governance_policy_id.validator = bv.String()
GovernancePolicyExportCreatedDetails.name.validator = bv.String()
GovernancePolicyExportCreatedDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyExportCreatedDetails.export_name.validator = bv.String()
GovernancePolicyExportCreatedDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'export_name',
])
GovernancePolicyExportCreatedDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyExportCreatedDetails.governance_policy_id.validator),
    ('name', GovernancePolicyExportCreatedDetails.name.validator),
    ('policy_type', GovernancePolicyExportCreatedDetails.policy_type.validator),
    ('export_name', GovernancePolicyExportCreatedDetails.export_name.validator),
]

GovernancePolicyExportCreatedType.description.validator = bv.String()
GovernancePolicyExportCreatedType._all_field_names_ = set(['description'])
GovernancePolicyExportCreatedType._all_fields_ = [('description', GovernancePolicyExportCreatedType.description.validator)]

GovernancePolicyExportRemovedDetails.governance_policy_id.validator = bv.String()
GovernancePolicyExportRemovedDetails.name.validator = bv.String()
GovernancePolicyExportRemovedDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyExportRemovedDetails.export_name.validator = bv.String()
GovernancePolicyExportRemovedDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'export_name',
])
GovernancePolicyExportRemovedDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyExportRemovedDetails.governance_policy_id.validator),
    ('name', GovernancePolicyExportRemovedDetails.name.validator),
    ('policy_type', GovernancePolicyExportRemovedDetails.policy_type.validator),
    ('export_name', GovernancePolicyExportRemovedDetails.export_name.validator),
]

GovernancePolicyExportRemovedType.description.validator = bv.String()
GovernancePolicyExportRemovedType._all_field_names_ = set(['description'])
GovernancePolicyExportRemovedType._all_fields_ = [('description', GovernancePolicyExportRemovedType.description.validator)]

GovernancePolicyRemoveFoldersDetails.governance_policy_id.validator = bv.String()
GovernancePolicyRemoveFoldersDetails.name.validator = bv.String()
GovernancePolicyRemoveFoldersDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyRemoveFoldersDetails.folders.validator = bv.Nullable(bv.List(bv.String()))
GovernancePolicyRemoveFoldersDetails.reason.validator = bv.Nullable(bv.String())
GovernancePolicyRemoveFoldersDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'folders',
    'reason',
])
GovernancePolicyRemoveFoldersDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyRemoveFoldersDetails.governance_policy_id.validator),
    ('name', GovernancePolicyRemoveFoldersDetails.name.validator),
    ('policy_type', GovernancePolicyRemoveFoldersDetails.policy_type.validator),
    ('folders', GovernancePolicyRemoveFoldersDetails.folders.validator),
    ('reason', GovernancePolicyRemoveFoldersDetails.reason.validator),
]

GovernancePolicyRemoveFoldersType.description.validator = bv.String()
GovernancePolicyRemoveFoldersType._all_field_names_ = set(['description'])
GovernancePolicyRemoveFoldersType._all_fields_ = [('description', GovernancePolicyRemoveFoldersType.description.validator)]

GovernancePolicyReportCreatedDetails.governance_policy_id.validator = bv.String()
GovernancePolicyReportCreatedDetails.name.validator = bv.String()
GovernancePolicyReportCreatedDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyReportCreatedDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
])
GovernancePolicyReportCreatedDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyReportCreatedDetails.governance_policy_id.validator),
    ('name', GovernancePolicyReportCreatedDetails.name.validator),
    ('policy_type', GovernancePolicyReportCreatedDetails.policy_type.validator),
]

GovernancePolicyReportCreatedType.description.validator = bv.String()
GovernancePolicyReportCreatedType._all_field_names_ = set(['description'])
GovernancePolicyReportCreatedType._all_fields_ = [('description', GovernancePolicyReportCreatedType.description.validator)]

GovernancePolicyZipPartDownloadedDetails.governance_policy_id.validator = bv.String()
GovernancePolicyZipPartDownloadedDetails.name.validator = bv.String()
GovernancePolicyZipPartDownloadedDetails.policy_type.validator = bv.Nullable(PolicyType_validator)
GovernancePolicyZipPartDownloadedDetails.export_name.validator = bv.String()
GovernancePolicyZipPartDownloadedDetails.part.validator = bv.Nullable(bv.String())
GovernancePolicyZipPartDownloadedDetails._all_field_names_ = set([
    'governance_policy_id',
    'name',
    'policy_type',
    'export_name',
    'part',
])
GovernancePolicyZipPartDownloadedDetails._all_fields_ = [
    ('governance_policy_id', GovernancePolicyZipPartDownloadedDetails.governance_policy_id.validator),
    ('name', GovernancePolicyZipPartDownloadedDetails.name.validator),
    ('policy_type', GovernancePolicyZipPartDownloadedDetails.policy_type.validator),
    ('export_name', GovernancePolicyZipPartDownloadedDetails.export_name.validator),
    ('part', GovernancePolicyZipPartDownloadedDetails.part.validator),
]

GovernancePolicyZipPartDownloadedType.description.validator = bv.String()
GovernancePolicyZipPartDownloadedType._all_field_names_ = set(['description'])
GovernancePolicyZipPartDownloadedType._all_fields_ = [('description', GovernancePolicyZipPartDownloadedType.description.validator)]

GroupAddExternalIdDetails.new_value.validator = team_common.GroupExternalId_validator
GroupAddExternalIdDetails._all_field_names_ = set(['new_value'])
GroupAddExternalIdDetails._all_fields_ = [('new_value', GroupAddExternalIdDetails.new_value.validator)]

GroupAddExternalIdType.description.validator = bv.String()
GroupAddExternalIdType._all_field_names_ = set(['description'])
GroupAddExternalIdType._all_fields_ = [('description', GroupAddExternalIdType.description.validator)]

GroupAddMemberDetails.is_group_owner.validator = bv.Boolean()
GroupAddMemberDetails._all_field_names_ = set(['is_group_owner'])
GroupAddMemberDetails._all_fields_ = [('is_group_owner', GroupAddMemberDetails.is_group_owner.validator)]

GroupAddMemberType.description.validator = bv.String()
GroupAddMemberType._all_field_names_ = set(['description'])
GroupAddMemberType._all_fields_ = [('description', GroupAddMemberType.description.validator)]

GroupChangeExternalIdDetails.new_value.validator = team_common.GroupExternalId_validator
GroupChangeExternalIdDetails.previous_value.validator = team_common.GroupExternalId_validator
GroupChangeExternalIdDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
GroupChangeExternalIdDetails._all_fields_ = [
    ('new_value', GroupChangeExternalIdDetails.new_value.validator),
    ('previous_value', GroupChangeExternalIdDetails.previous_value.validator),
]

GroupChangeExternalIdType.description.validator = bv.String()
GroupChangeExternalIdType._all_field_names_ = set(['description'])
GroupChangeExternalIdType._all_fields_ = [('description', GroupChangeExternalIdType.description.validator)]

GroupChangeManagementTypeDetails.new_value.validator = team_common.GroupManagementType_validator
GroupChangeManagementTypeDetails.previous_value.validator = bv.Nullable(team_common.GroupManagementType_validator)
GroupChangeManagementTypeDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
GroupChangeManagementTypeDetails._all_fields_ = [
    ('new_value', GroupChangeManagementTypeDetails.new_value.validator),
    ('previous_value', GroupChangeManagementTypeDetails.previous_value.validator),
]

GroupChangeManagementTypeType.description.validator = bv.String()
GroupChangeManagementTypeType._all_field_names_ = set(['description'])
GroupChangeManagementTypeType._all_fields_ = [('description', GroupChangeManagementTypeType.description.validator)]

GroupChangeMemberRoleDetails.is_group_owner.validator = bv.Boolean()
GroupChangeMemberRoleDetails._all_field_names_ = set(['is_group_owner'])
GroupChangeMemberRoleDetails._all_fields_ = [('is_group_owner', GroupChangeMemberRoleDetails.is_group_owner.validator)]

GroupChangeMemberRoleType.description.validator = bv.String()
GroupChangeMemberRoleType._all_field_names_ = set(['description'])
GroupChangeMemberRoleType._all_fields_ = [('description', GroupChangeMemberRoleType.description.validator)]

GroupCreateDetails.is_company_managed.validator = bv.Nullable(bv.Boolean())
GroupCreateDetails.join_policy.validator = bv.Nullable(GroupJoinPolicy_validator)
GroupCreateDetails._all_field_names_ = set([
    'is_company_managed',
    'join_policy',
])
GroupCreateDetails._all_fields_ = [
    ('is_company_managed', GroupCreateDetails.is_company_managed.validator),
    ('join_policy', GroupCreateDetails.join_policy.validator),
]

GroupCreateType.description.validator = bv.String()
GroupCreateType._all_field_names_ = set(['description'])
GroupCreateType._all_fields_ = [('description', GroupCreateType.description.validator)]

GroupDeleteDetails.is_company_managed.validator = bv.Nullable(bv.Boolean())
GroupDeleteDetails._all_field_names_ = set(['is_company_managed'])
GroupDeleteDetails._all_fields_ = [('is_company_managed', GroupDeleteDetails.is_company_managed.validator)]

GroupDeleteType.description.validator = bv.String()
GroupDeleteType._all_field_names_ = set(['description'])
GroupDeleteType._all_fields_ = [('description', GroupDeleteType.description.validator)]

GroupDescriptionUpdatedDetails._all_field_names_ = set([])
GroupDescriptionUpdatedDetails._all_fields_ = []

GroupDescriptionUpdatedType.description.validator = bv.String()
GroupDescriptionUpdatedType._all_field_names_ = set(['description'])
GroupDescriptionUpdatedType._all_fields_ = [('description', GroupDescriptionUpdatedType.description.validator)]

GroupJoinPolicy._open_validator = bv.Void()
GroupJoinPolicy._request_to_join_validator = bv.Void()
GroupJoinPolicy._other_validator = bv.Void()
GroupJoinPolicy._tagmap = {
    'open': GroupJoinPolicy._open_validator,
    'request_to_join': GroupJoinPolicy._request_to_join_validator,
    'other': GroupJoinPolicy._other_validator,
}

GroupJoinPolicy.open = GroupJoinPolicy('open')
GroupJoinPolicy.request_to_join = GroupJoinPolicy('request_to_join')
GroupJoinPolicy.other = GroupJoinPolicy('other')

GroupJoinPolicyUpdatedDetails.is_company_managed.validator = bv.Nullable(bv.Boolean())
GroupJoinPolicyUpdatedDetails.join_policy.validator = bv.Nullable(GroupJoinPolicy_validator)
GroupJoinPolicyUpdatedDetails._all_field_names_ = set([
    'is_company_managed',
    'join_policy',
])
GroupJoinPolicyUpdatedDetails._all_fields_ = [
    ('is_company_managed', GroupJoinPolicyUpdatedDetails.is_company_managed.validator),
    ('join_policy', GroupJoinPolicyUpdatedDetails.join_policy.validator),
]

GroupJoinPolicyUpdatedType.description.validator = bv.String()
GroupJoinPolicyUpdatedType._all_field_names_ = set(['description'])
GroupJoinPolicyUpdatedType._all_fields_ = [('description', GroupJoinPolicyUpdatedType.description.validator)]

GroupLogInfo.group_id.validator = bv.Nullable(team_common.GroupId_validator)
GroupLogInfo.display_name.validator = bv.String()
GroupLogInfo.external_id.validator = bv.Nullable(team_common.GroupExternalId_validator)
GroupLogInfo._all_field_names_ = set([
    'group_id',
    'display_name',
    'external_id',
])
GroupLogInfo._all_fields_ = [
    ('group_id', GroupLogInfo.group_id.validator),
    ('display_name', GroupLogInfo.display_name.validator),
    ('external_id', GroupLogInfo.external_id.validator),
]

GroupMovedDetails._all_field_names_ = set([])
GroupMovedDetails._all_fields_ = []

GroupMovedType.description.validator = bv.String()
GroupMovedType._all_field_names_ = set(['description'])
GroupMovedType._all_fields_ = [('description', GroupMovedType.description.validator)]

GroupRemoveExternalIdDetails.previous_value.validator = team_common.GroupExternalId_validator
GroupRemoveExternalIdDetails._all_field_names_ = set(['previous_value'])
GroupRemoveExternalIdDetails._all_fields_ = [('previous_value', GroupRemoveExternalIdDetails.previous_value.validator)]

GroupRemoveExternalIdType.description.validator = bv.String()
GroupRemoveExternalIdType._all_field_names_ = set(['description'])
GroupRemoveExternalIdType._all_fields_ = [('description', GroupRemoveExternalIdType.description.validator)]

GroupRemoveMemberDetails._all_field_names_ = set([])
GroupRemoveMemberDetails._all_fields_ = []

GroupRemoveMemberType.description.validator = bv.String()
GroupRemoveMemberType._all_field_names_ = set(['description'])
GroupRemoveMemberType._all_fields_ = [('description', GroupRemoveMemberType.description.validator)]

GroupRenameDetails.previous_value.validator = bv.String()
GroupRenameDetails.new_value.validator = bv.String()
GroupRenameDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
GroupRenameDetails._all_fields_ = [
    ('previous_value', GroupRenameDetails.previous_value.validator),
    ('new_value', GroupRenameDetails.new_value.validator),
]

GroupRenameType.description.validator = bv.String()
GroupRenameType._all_field_names_ = set(['description'])
GroupRenameType._all_fields_ = [('description', GroupRenameType.description.validator)]

GroupUserManagementChangePolicyDetails.new_value.validator = team_policies.GroupCreation_validator
GroupUserManagementChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.GroupCreation_validator)
GroupUserManagementChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
GroupUserManagementChangePolicyDetails._all_fields_ = [
    ('new_value', GroupUserManagementChangePolicyDetails.new_value.validator),
    ('previous_value', GroupUserManagementChangePolicyDetails.previous_value.validator),
]

GroupUserManagementChangePolicyType.description.validator = bv.String()
GroupUserManagementChangePolicyType._all_field_names_ = set(['description'])
GroupUserManagementChangePolicyType._all_fields_ = [('description', GroupUserManagementChangePolicyType.description.validator)]

GuestAdminChangeStatusDetails.is_guest.validator = bv.Boolean()
GuestAdminChangeStatusDetails.guest_team_name.validator = bv.Nullable(bv.String())
GuestAdminChangeStatusDetails.host_team_name.validator = bv.Nullable(bv.String())
GuestAdminChangeStatusDetails.previous_value.validator = TrustedTeamsRequestState_validator
GuestAdminChangeStatusDetails.new_value.validator = TrustedTeamsRequestState_validator
GuestAdminChangeStatusDetails.action_details.validator = TrustedTeamsRequestAction_validator
GuestAdminChangeStatusDetails._all_field_names_ = set([
    'is_guest',
    'guest_team_name',
    'host_team_name',
    'previous_value',
    'new_value',
    'action_details',
])
GuestAdminChangeStatusDetails._all_fields_ = [
    ('is_guest', GuestAdminChangeStatusDetails.is_guest.validator),
    ('guest_team_name', GuestAdminChangeStatusDetails.guest_team_name.validator),
    ('host_team_name', GuestAdminChangeStatusDetails.host_team_name.validator),
    ('previous_value', GuestAdminChangeStatusDetails.previous_value.validator),
    ('new_value', GuestAdminChangeStatusDetails.new_value.validator),
    ('action_details', GuestAdminChangeStatusDetails.action_details.validator),
]

GuestAdminChangeStatusType.description.validator = bv.String()
GuestAdminChangeStatusType._all_field_names_ = set(['description'])
GuestAdminChangeStatusType._all_fields_ = [('description', GuestAdminChangeStatusType.description.validator)]

GuestAdminSignedInViaTrustedTeamsDetails.team_name.validator = bv.Nullable(bv.String())
GuestAdminSignedInViaTrustedTeamsDetails.trusted_team_name.validator = bv.Nullable(bv.String())
GuestAdminSignedInViaTrustedTeamsDetails._all_field_names_ = set([
    'team_name',
    'trusted_team_name',
])
GuestAdminSignedInViaTrustedTeamsDetails._all_fields_ = [
    ('team_name', GuestAdminSignedInViaTrustedTeamsDetails.team_name.validator),
    ('trusted_team_name', GuestAdminSignedInViaTrustedTeamsDetails.trusted_team_name.validator),
]

GuestAdminSignedInViaTrustedTeamsType.description.validator = bv.String()
GuestAdminSignedInViaTrustedTeamsType._all_field_names_ = set(['description'])
GuestAdminSignedInViaTrustedTeamsType._all_fields_ = [('description', GuestAdminSignedInViaTrustedTeamsType.description.validator)]

GuestAdminSignedOutViaTrustedTeamsDetails.team_name.validator = bv.Nullable(bv.String())
GuestAdminSignedOutViaTrustedTeamsDetails.trusted_team_name.validator = bv.Nullable(bv.String())
GuestAdminSignedOutViaTrustedTeamsDetails._all_field_names_ = set([
    'team_name',
    'trusted_team_name',
])
GuestAdminSignedOutViaTrustedTeamsDetails._all_fields_ = [
    ('team_name', GuestAdminSignedOutViaTrustedTeamsDetails.team_name.validator),
    ('trusted_team_name', GuestAdminSignedOutViaTrustedTeamsDetails.trusted_team_name.validator),
]

GuestAdminSignedOutViaTrustedTeamsType.description.validator = bv.String()
GuestAdminSignedOutViaTrustedTeamsType._all_field_names_ = set(['description'])
GuestAdminSignedOutViaTrustedTeamsType._all_fields_ = [('description', GuestAdminSignedOutViaTrustedTeamsType.description.validator)]

IdentifierType._email_validator = bv.Void()
IdentifierType._facebook_profile_name_validator = bv.Void()
IdentifierType._other_validator = bv.Void()
IdentifierType._tagmap = {
    'email': IdentifierType._email_validator,
    'facebook_profile_name': IdentifierType._facebook_profile_name_validator,
    'other': IdentifierType._other_validator,
}

IdentifierType.email = IdentifierType('email')
IdentifierType.facebook_profile_name = IdentifierType('facebook_profile_name')
IdentifierType.other = IdentifierType('other')

IntegrationConnectedDetails.integration_name.validator = bv.String()
IntegrationConnectedDetails._all_field_names_ = set(['integration_name'])
IntegrationConnectedDetails._all_fields_ = [('integration_name', IntegrationConnectedDetails.integration_name.validator)]

IntegrationConnectedType.description.validator = bv.String()
IntegrationConnectedType._all_field_names_ = set(['description'])
IntegrationConnectedType._all_fields_ = [('description', IntegrationConnectedType.description.validator)]

IntegrationDisconnectedDetails.integration_name.validator = bv.String()
IntegrationDisconnectedDetails._all_field_names_ = set(['integration_name'])
IntegrationDisconnectedDetails._all_fields_ = [('integration_name', IntegrationDisconnectedDetails.integration_name.validator)]

IntegrationDisconnectedType.description.validator = bv.String()
IntegrationDisconnectedType._all_field_names_ = set(['description'])
IntegrationDisconnectedType._all_fields_ = [('description', IntegrationDisconnectedType.description.validator)]

IntegrationPolicy._disabled_validator = bv.Void()
IntegrationPolicy._enabled_validator = bv.Void()
IntegrationPolicy._other_validator = bv.Void()
IntegrationPolicy._tagmap = {
    'disabled': IntegrationPolicy._disabled_validator,
    'enabled': IntegrationPolicy._enabled_validator,
    'other': IntegrationPolicy._other_validator,
}

IntegrationPolicy.disabled = IntegrationPolicy('disabled')
IntegrationPolicy.enabled = IntegrationPolicy('enabled')
IntegrationPolicy.other = IntegrationPolicy('other')

IntegrationPolicyChangedDetails.integration_name.validator = bv.String()
IntegrationPolicyChangedDetails.new_value.validator = IntegrationPolicy_validator
IntegrationPolicyChangedDetails.previous_value.validator = IntegrationPolicy_validator
IntegrationPolicyChangedDetails._all_field_names_ = set([
    'integration_name',
    'new_value',
    'previous_value',
])
IntegrationPolicyChangedDetails._all_fields_ = [
    ('integration_name', IntegrationPolicyChangedDetails.integration_name.validator),
    ('new_value', IntegrationPolicyChangedDetails.new_value.validator),
    ('previous_value', IntegrationPolicyChangedDetails.previous_value.validator),
]

IntegrationPolicyChangedType.description.validator = bv.String()
IntegrationPolicyChangedType._all_field_names_ = set(['description'])
IntegrationPolicyChangedType._all_fields_ = [('description', IntegrationPolicyChangedType.description.validator)]

InviteAcceptanceEmailPolicy._disabled_validator = bv.Void()
InviteAcceptanceEmailPolicy._enabled_validator = bv.Void()
InviteAcceptanceEmailPolicy._other_validator = bv.Void()
InviteAcceptanceEmailPolicy._tagmap = {
    'disabled': InviteAcceptanceEmailPolicy._disabled_validator,
    'enabled': InviteAcceptanceEmailPolicy._enabled_validator,
    'other': InviteAcceptanceEmailPolicy._other_validator,
}

InviteAcceptanceEmailPolicy.disabled = InviteAcceptanceEmailPolicy('disabled')
InviteAcceptanceEmailPolicy.enabled = InviteAcceptanceEmailPolicy('enabled')
InviteAcceptanceEmailPolicy.other = InviteAcceptanceEmailPolicy('other')

InviteAcceptanceEmailPolicyChangedDetails.new_value.validator = InviteAcceptanceEmailPolicy_validator
InviteAcceptanceEmailPolicyChangedDetails.previous_value.validator = InviteAcceptanceEmailPolicy_validator
InviteAcceptanceEmailPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
InviteAcceptanceEmailPolicyChangedDetails._all_fields_ = [
    ('new_value', InviteAcceptanceEmailPolicyChangedDetails.new_value.validator),
    ('previous_value', InviteAcceptanceEmailPolicyChangedDetails.previous_value.validator),
]

InviteAcceptanceEmailPolicyChangedType.description.validator = bv.String()
InviteAcceptanceEmailPolicyChangedType._all_field_names_ = set(['description'])
InviteAcceptanceEmailPolicyChangedType._all_fields_ = [('description', InviteAcceptanceEmailPolicyChangedType.description.validator)]

InviteMethod._auto_approve_validator = bv.Void()
InviteMethod._invite_link_validator = bv.Void()
InviteMethod._member_invite_validator = bv.Void()
InviteMethod._moved_from_another_team_validator = bv.Void()
InviteMethod._other_validator = bv.Void()
InviteMethod._tagmap = {
    'auto_approve': InviteMethod._auto_approve_validator,
    'invite_link': InviteMethod._invite_link_validator,
    'member_invite': InviteMethod._member_invite_validator,
    'moved_from_another_team': InviteMethod._moved_from_another_team_validator,
    'other': InviteMethod._other_validator,
}

InviteMethod.auto_approve = InviteMethod('auto_approve')
InviteMethod.invite_link = InviteMethod('invite_link')
InviteMethod.member_invite = InviteMethod('member_invite')
InviteMethod.moved_from_another_team = InviteMethod('moved_from_another_team')
InviteMethod.other = InviteMethod('other')

JoinTeamDetails.linked_apps.validator = bv.List(UserLinkedAppLogInfo_validator)
JoinTeamDetails.linked_devices.validator = bv.List(LinkedDeviceLogInfo_validator)
JoinTeamDetails.linked_shared_folders.validator = bv.List(FolderLogInfo_validator)
JoinTeamDetails.was_linked_apps_truncated.validator = bv.Nullable(bv.Boolean())
JoinTeamDetails.was_linked_devices_truncated.validator = bv.Nullable(bv.Boolean())
JoinTeamDetails.was_linked_shared_folders_truncated.validator = bv.Nullable(bv.Boolean())
JoinTeamDetails.has_linked_apps.validator = bv.Nullable(bv.Boolean())
JoinTeamDetails.has_linked_devices.validator = bv.Nullable(bv.Boolean())
JoinTeamDetails.has_linked_shared_folders.validator = bv.Nullable(bv.Boolean())
JoinTeamDetails._all_field_names_ = set([
    'linked_apps',
    'linked_devices',
    'linked_shared_folders',
    'was_linked_apps_truncated',
    'was_linked_devices_truncated',
    'was_linked_shared_folders_truncated',
    'has_linked_apps',
    'has_linked_devices',
    'has_linked_shared_folders',
])
JoinTeamDetails._all_fields_ = [
    ('linked_apps', JoinTeamDetails.linked_apps.validator),
    ('linked_devices', JoinTeamDetails.linked_devices.validator),
    ('linked_shared_folders', JoinTeamDetails.linked_shared_folders.validator),
    ('was_linked_apps_truncated', JoinTeamDetails.was_linked_apps_truncated.validator),
    ('was_linked_devices_truncated', JoinTeamDetails.was_linked_devices_truncated.validator),
    ('was_linked_shared_folders_truncated', JoinTeamDetails.was_linked_shared_folders_truncated.validator),
    ('has_linked_apps', JoinTeamDetails.has_linked_apps.validator),
    ('has_linked_devices', JoinTeamDetails.has_linked_devices.validator),
    ('has_linked_shared_folders', JoinTeamDetails.has_linked_shared_folders.validator),
]

LabelType._personal_information_validator = bv.Void()
LabelType._test_only_validator = bv.Void()
LabelType._user_defined_tag_validator = bv.Void()
LabelType._other_validator = bv.Void()
LabelType._tagmap = {
    'personal_information': LabelType._personal_information_validator,
    'test_only': LabelType._test_only_validator,
    'user_defined_tag': LabelType._user_defined_tag_validator,
    'other': LabelType._other_validator,
}

LabelType.personal_information = LabelType('personal_information')
LabelType.test_only = LabelType('test_only')
LabelType.user_defined_tag = LabelType('user_defined_tag')
LabelType.other = LabelType('other')

LegacyDeviceSessionLogInfo.session_info.validator = bv.Nullable(SessionLogInfo_validator)
LegacyDeviceSessionLogInfo.display_name.validator = bv.Nullable(bv.String())
LegacyDeviceSessionLogInfo.is_emm_managed.validator = bv.Nullable(bv.Boolean())
LegacyDeviceSessionLogInfo.platform.validator = bv.Nullable(bv.String())
LegacyDeviceSessionLogInfo.mac_address.validator = bv.Nullable(IpAddress_validator)
LegacyDeviceSessionLogInfo.os_version.validator = bv.Nullable(bv.String())
LegacyDeviceSessionLogInfo.device_type.validator = bv.Nullable(bv.String())
LegacyDeviceSessionLogInfo.client_version.validator = bv.Nullable(bv.String())
LegacyDeviceSessionLogInfo.legacy_uniq_id.validator = bv.Nullable(bv.String())
LegacyDeviceSessionLogInfo._field_names_ = set([
    'session_info',
    'display_name',
    'is_emm_managed',
    'platform',
    'mac_address',
    'os_version',
    'device_type',
    'client_version',
    'legacy_uniq_id',
])
LegacyDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(LegacyDeviceSessionLogInfo._field_names_)
LegacyDeviceSessionLogInfo._fields_ = [
    ('session_info', LegacyDeviceSessionLogInfo.session_info.validator),
    ('display_name', LegacyDeviceSessionLogInfo.display_name.validator),
    ('is_emm_managed', LegacyDeviceSessionLogInfo.is_emm_managed.validator),
    ('platform', LegacyDeviceSessionLogInfo.platform.validator),
    ('mac_address', LegacyDeviceSessionLogInfo.mac_address.validator),
    ('os_version', LegacyDeviceSessionLogInfo.os_version.validator),
    ('device_type', LegacyDeviceSessionLogInfo.device_type.validator),
    ('client_version', LegacyDeviceSessionLogInfo.client_version.validator),
    ('legacy_uniq_id', LegacyDeviceSessionLogInfo.legacy_uniq_id.validator),
]
LegacyDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + LegacyDeviceSessionLogInfo._fields_

LegalHoldsActivateAHoldDetails.legal_hold_id.validator = bv.String()
LegalHoldsActivateAHoldDetails.name.validator = bv.String()
LegalHoldsActivateAHoldDetails.start_date.validator = common.DropboxTimestamp_validator
LegalHoldsActivateAHoldDetails.end_date.validator = bv.Nullable(common.DropboxTimestamp_validator)
LegalHoldsActivateAHoldDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
    'start_date',
    'end_date',
])
LegalHoldsActivateAHoldDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsActivateAHoldDetails.legal_hold_id.validator),
    ('name', LegalHoldsActivateAHoldDetails.name.validator),
    ('start_date', LegalHoldsActivateAHoldDetails.start_date.validator),
    ('end_date', LegalHoldsActivateAHoldDetails.end_date.validator),
]

LegalHoldsActivateAHoldType.description.validator = bv.String()
LegalHoldsActivateAHoldType._all_field_names_ = set(['description'])
LegalHoldsActivateAHoldType._all_fields_ = [('description', LegalHoldsActivateAHoldType.description.validator)]

LegalHoldsAddMembersDetails.legal_hold_id.validator = bv.String()
LegalHoldsAddMembersDetails.name.validator = bv.String()
LegalHoldsAddMembersDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
])
LegalHoldsAddMembersDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsAddMembersDetails.legal_hold_id.validator),
    ('name', LegalHoldsAddMembersDetails.name.validator),
]

LegalHoldsAddMembersType.description.validator = bv.String()
LegalHoldsAddMembersType._all_field_names_ = set(['description'])
LegalHoldsAddMembersType._all_fields_ = [('description', LegalHoldsAddMembersType.description.validator)]

LegalHoldsChangeHoldDetailsDetails.legal_hold_id.validator = bv.String()
LegalHoldsChangeHoldDetailsDetails.name.validator = bv.String()
LegalHoldsChangeHoldDetailsDetails.previous_value.validator = bv.String()
LegalHoldsChangeHoldDetailsDetails.new_value.validator = bv.String()
LegalHoldsChangeHoldDetailsDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
    'previous_value',
    'new_value',
])
LegalHoldsChangeHoldDetailsDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsChangeHoldDetailsDetails.legal_hold_id.validator),
    ('name', LegalHoldsChangeHoldDetailsDetails.name.validator),
    ('previous_value', LegalHoldsChangeHoldDetailsDetails.previous_value.validator),
    ('new_value', LegalHoldsChangeHoldDetailsDetails.new_value.validator),
]

LegalHoldsChangeHoldDetailsType.description.validator = bv.String()
LegalHoldsChangeHoldDetailsType._all_field_names_ = set(['description'])
LegalHoldsChangeHoldDetailsType._all_fields_ = [('description', LegalHoldsChangeHoldDetailsType.description.validator)]

LegalHoldsChangeHoldNameDetails.legal_hold_id.validator = bv.String()
LegalHoldsChangeHoldNameDetails.previous_value.validator = bv.String()
LegalHoldsChangeHoldNameDetails.new_value.validator = bv.String()
LegalHoldsChangeHoldNameDetails._all_field_names_ = set([
    'legal_hold_id',
    'previous_value',
    'new_value',
])
LegalHoldsChangeHoldNameDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsChangeHoldNameDetails.legal_hold_id.validator),
    ('previous_value', LegalHoldsChangeHoldNameDetails.previous_value.validator),
    ('new_value', LegalHoldsChangeHoldNameDetails.new_value.validator),
]

LegalHoldsChangeHoldNameType.description.validator = bv.String()
LegalHoldsChangeHoldNameType._all_field_names_ = set(['description'])
LegalHoldsChangeHoldNameType._all_fields_ = [('description', LegalHoldsChangeHoldNameType.description.validator)]

LegalHoldsExportAHoldDetails.legal_hold_id.validator = bv.String()
LegalHoldsExportAHoldDetails.name.validator = bv.String()
LegalHoldsExportAHoldDetails.export_name.validator = bv.Nullable(bv.String())
LegalHoldsExportAHoldDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
    'export_name',
])
LegalHoldsExportAHoldDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsExportAHoldDetails.legal_hold_id.validator),
    ('name', LegalHoldsExportAHoldDetails.name.validator),
    ('export_name', LegalHoldsExportAHoldDetails.export_name.validator),
]

LegalHoldsExportAHoldType.description.validator = bv.String()
LegalHoldsExportAHoldType._all_field_names_ = set(['description'])
LegalHoldsExportAHoldType._all_fields_ = [('description', LegalHoldsExportAHoldType.description.validator)]

LegalHoldsExportCancelledDetails.legal_hold_id.validator = bv.String()
LegalHoldsExportCancelledDetails.name.validator = bv.String()
LegalHoldsExportCancelledDetails.export_name.validator = bv.String()
LegalHoldsExportCancelledDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
    'export_name',
])
LegalHoldsExportCancelledDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsExportCancelledDetails.legal_hold_id.validator),
    ('name', LegalHoldsExportCancelledDetails.name.validator),
    ('export_name', LegalHoldsExportCancelledDetails.export_name.validator),
]

LegalHoldsExportCancelledType.description.validator = bv.String()
LegalHoldsExportCancelledType._all_field_names_ = set(['description'])
LegalHoldsExportCancelledType._all_fields_ = [('description', LegalHoldsExportCancelledType.description.validator)]

LegalHoldsExportDownloadedDetails.legal_hold_id.validator = bv.String()
LegalHoldsExportDownloadedDetails.name.validator = bv.String()
LegalHoldsExportDownloadedDetails.export_name.validator = bv.String()
LegalHoldsExportDownloadedDetails.part.validator = bv.Nullable(bv.String())
LegalHoldsExportDownloadedDetails.file_name.validator = bv.Nullable(bv.String())
LegalHoldsExportDownloadedDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
    'export_name',
    'part',
    'file_name',
])
LegalHoldsExportDownloadedDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsExportDownloadedDetails.legal_hold_id.validator),
    ('name', LegalHoldsExportDownloadedDetails.name.validator),
    ('export_name', LegalHoldsExportDownloadedDetails.export_name.validator),
    ('part', LegalHoldsExportDownloadedDetails.part.validator),
    ('file_name', LegalHoldsExportDownloadedDetails.file_name.validator),
]

LegalHoldsExportDownloadedType.description.validator = bv.String()
LegalHoldsExportDownloadedType._all_field_names_ = set(['description'])
LegalHoldsExportDownloadedType._all_fields_ = [('description', LegalHoldsExportDownloadedType.description.validator)]

LegalHoldsExportRemovedDetails.legal_hold_id.validator = bv.String()
LegalHoldsExportRemovedDetails.name.validator = bv.String()
LegalHoldsExportRemovedDetails.export_name.validator = bv.String()
LegalHoldsExportRemovedDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
    'export_name',
])
LegalHoldsExportRemovedDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsExportRemovedDetails.legal_hold_id.validator),
    ('name', LegalHoldsExportRemovedDetails.name.validator),
    ('export_name', LegalHoldsExportRemovedDetails.export_name.validator),
]

LegalHoldsExportRemovedType.description.validator = bv.String()
LegalHoldsExportRemovedType._all_field_names_ = set(['description'])
LegalHoldsExportRemovedType._all_fields_ = [('description', LegalHoldsExportRemovedType.description.validator)]

LegalHoldsReleaseAHoldDetails.legal_hold_id.validator = bv.String()
LegalHoldsReleaseAHoldDetails.name.validator = bv.String()
LegalHoldsReleaseAHoldDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
])
LegalHoldsReleaseAHoldDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsReleaseAHoldDetails.legal_hold_id.validator),
    ('name', LegalHoldsReleaseAHoldDetails.name.validator),
]

LegalHoldsReleaseAHoldType.description.validator = bv.String()
LegalHoldsReleaseAHoldType._all_field_names_ = set(['description'])
LegalHoldsReleaseAHoldType._all_fields_ = [('description', LegalHoldsReleaseAHoldType.description.validator)]

LegalHoldsRemoveMembersDetails.legal_hold_id.validator = bv.String()
LegalHoldsRemoveMembersDetails.name.validator = bv.String()
LegalHoldsRemoveMembersDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
])
LegalHoldsRemoveMembersDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsRemoveMembersDetails.legal_hold_id.validator),
    ('name', LegalHoldsRemoveMembersDetails.name.validator),
]

LegalHoldsRemoveMembersType.description.validator = bv.String()
LegalHoldsRemoveMembersType._all_field_names_ = set(['description'])
LegalHoldsRemoveMembersType._all_fields_ = [('description', LegalHoldsRemoveMembersType.description.validator)]

LegalHoldsReportAHoldDetails.legal_hold_id.validator = bv.String()
LegalHoldsReportAHoldDetails.name.validator = bv.String()
LegalHoldsReportAHoldDetails._all_field_names_ = set([
    'legal_hold_id',
    'name',
])
LegalHoldsReportAHoldDetails._all_fields_ = [
    ('legal_hold_id', LegalHoldsReportAHoldDetails.legal_hold_id.validator),
    ('name', LegalHoldsReportAHoldDetails.name.validator),
]

LegalHoldsReportAHoldType.description.validator = bv.String()
LegalHoldsReportAHoldType._all_field_names_ = set(['description'])
LegalHoldsReportAHoldType._all_fields_ = [('description', LegalHoldsReportAHoldType.description.validator)]

LinkedDeviceLogInfo._desktop_device_session_validator = DesktopDeviceSessionLogInfo_validator
LinkedDeviceLogInfo._legacy_device_session_validator = LegacyDeviceSessionLogInfo_validator
LinkedDeviceLogInfo._mobile_device_session_validator = MobileDeviceSessionLogInfo_validator
LinkedDeviceLogInfo._web_device_session_validator = WebDeviceSessionLogInfo_validator
LinkedDeviceLogInfo._other_validator = bv.Void()
LinkedDeviceLogInfo._tagmap = {
    'desktop_device_session': LinkedDeviceLogInfo._desktop_device_session_validator,
    'legacy_device_session': LinkedDeviceLogInfo._legacy_device_session_validator,
    'mobile_device_session': LinkedDeviceLogInfo._mobile_device_session_validator,
    'web_device_session': LinkedDeviceLogInfo._web_device_session_validator,
    'other': LinkedDeviceLogInfo._other_validator,
}

LinkedDeviceLogInfo.other = LinkedDeviceLogInfo('other')

LockStatus._locked_validator = bv.Void()
LockStatus._unlocked_validator = bv.Void()
LockStatus._other_validator = bv.Void()
LockStatus._tagmap = {
    'locked': LockStatus._locked_validator,
    'unlocked': LockStatus._unlocked_validator,
    'other': LockStatus._other_validator,
}

LockStatus.locked = LockStatus('locked')
LockStatus.unlocked = LockStatus('unlocked')
LockStatus.other = LockStatus('other')

LoginFailDetails.is_emm_managed.validator = bv.Nullable(bv.Boolean())
LoginFailDetails.login_method.validator = LoginMethod_validator
LoginFailDetails.error_details.validator = FailureDetailsLogInfo_validator
LoginFailDetails._all_field_names_ = set([
    'is_emm_managed',
    'login_method',
    'error_details',
])
LoginFailDetails._all_fields_ = [
    ('is_emm_managed', LoginFailDetails.is_emm_managed.validator),
    ('login_method', LoginFailDetails.login_method.validator),
    ('error_details', LoginFailDetails.error_details.validator),
]

LoginFailType.description.validator = bv.String()
LoginFailType._all_field_names_ = set(['description'])
LoginFailType._all_fields_ = [('description', LoginFailType.description.validator)]

LoginMethod._apple_oauth_validator = bv.Void()
LoginMethod._first_party_token_exchange_validator = bv.Void()
LoginMethod._google_oauth_validator = bv.Void()
LoginMethod._password_validator = bv.Void()
LoginMethod._qr_code_validator = bv.Void()
LoginMethod._saml_validator = bv.Void()
LoginMethod._two_factor_authentication_validator = bv.Void()
LoginMethod._web_session_validator = bv.Void()
LoginMethod._other_validator = bv.Void()
LoginMethod._tagmap = {
    'apple_oauth': LoginMethod._apple_oauth_validator,
    'first_party_token_exchange': LoginMethod._first_party_token_exchange_validator,
    'google_oauth': LoginMethod._google_oauth_validator,
    'password': LoginMethod._password_validator,
    'qr_code': LoginMethod._qr_code_validator,
    'saml': LoginMethod._saml_validator,
    'two_factor_authentication': LoginMethod._two_factor_authentication_validator,
    'web_session': LoginMethod._web_session_validator,
    'other': LoginMethod._other_validator,
}

LoginMethod.apple_oauth = LoginMethod('apple_oauth')
LoginMethod.first_party_token_exchange = LoginMethod('first_party_token_exchange')
LoginMethod.google_oauth = LoginMethod('google_oauth')
LoginMethod.password = LoginMethod('password')
LoginMethod.qr_code = LoginMethod('qr_code')
LoginMethod.saml = LoginMethod('saml')
LoginMethod.two_factor_authentication = LoginMethod('two_factor_authentication')
LoginMethod.web_session = LoginMethod('web_session')
LoginMethod.other = LoginMethod('other')

LoginSuccessDetails.is_emm_managed.validator = bv.Nullable(bv.Boolean())
LoginSuccessDetails.login_method.validator = LoginMethod_validator
LoginSuccessDetails._all_field_names_ = set([
    'is_emm_managed',
    'login_method',
])
LoginSuccessDetails._all_fields_ = [
    ('is_emm_managed', LoginSuccessDetails.is_emm_managed.validator),
    ('login_method', LoginSuccessDetails.login_method.validator),
]

LoginSuccessType.description.validator = bv.String()
LoginSuccessType._all_field_names_ = set(['description'])
LoginSuccessType._all_fields_ = [('description', LoginSuccessType.description.validator)]

LogoutDetails.login_id.validator = bv.Nullable(bv.String())
LogoutDetails._all_field_names_ = set(['login_id'])
LogoutDetails._all_fields_ = [('login_id', LogoutDetails.login_id.validator)]

LogoutType.description.validator = bv.String()
LogoutType._all_field_names_ = set(['description'])
LogoutType._all_fields_ = [('description', LogoutType.description.validator)]

MemberAddExternalIdDetails.new_value.validator = team_common.MemberExternalId_validator
MemberAddExternalIdDetails._all_field_names_ = set(['new_value'])
MemberAddExternalIdDetails._all_fields_ = [('new_value', MemberAddExternalIdDetails.new_value.validator)]

MemberAddExternalIdType.description.validator = bv.String()
MemberAddExternalIdType._all_field_names_ = set(['description'])
MemberAddExternalIdType._all_fields_ = [('description', MemberAddExternalIdType.description.validator)]

MemberAddNameDetails.new_value.validator = UserNameLogInfo_validator
MemberAddNameDetails._all_field_names_ = set(['new_value'])
MemberAddNameDetails._all_fields_ = [('new_value', MemberAddNameDetails.new_value.validator)]

MemberAddNameType.description.validator = bv.String()
MemberAddNameType._all_field_names_ = set(['description'])
MemberAddNameType._all_fields_ = [('description', MemberAddNameType.description.validator)]

MemberChangeAdminRoleDetails.new_value.validator = bv.Nullable(AdminRole_validator)
MemberChangeAdminRoleDetails.previous_value.validator = bv.Nullable(AdminRole_validator)
MemberChangeAdminRoleDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberChangeAdminRoleDetails._all_fields_ = [
    ('new_value', MemberChangeAdminRoleDetails.new_value.validator),
    ('previous_value', MemberChangeAdminRoleDetails.previous_value.validator),
]

MemberChangeAdminRoleType.description.validator = bv.String()
MemberChangeAdminRoleType._all_field_names_ = set(['description'])
MemberChangeAdminRoleType._all_fields_ = [('description', MemberChangeAdminRoleType.description.validator)]

MemberChangeEmailDetails.new_value.validator = EmailAddress_validator
MemberChangeEmailDetails.previous_value.validator = bv.Nullable(EmailAddress_validator)
MemberChangeEmailDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberChangeEmailDetails._all_fields_ = [
    ('new_value', MemberChangeEmailDetails.new_value.validator),
    ('previous_value', MemberChangeEmailDetails.previous_value.validator),
]

MemberChangeEmailType.description.validator = bv.String()
MemberChangeEmailType._all_field_names_ = set(['description'])
MemberChangeEmailType._all_fields_ = [('description', MemberChangeEmailType.description.validator)]

MemberChangeExternalIdDetails.new_value.validator = team_common.MemberExternalId_validator
MemberChangeExternalIdDetails.previous_value.validator = team_common.MemberExternalId_validator
MemberChangeExternalIdDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberChangeExternalIdDetails._all_fields_ = [
    ('new_value', MemberChangeExternalIdDetails.new_value.validator),
    ('previous_value', MemberChangeExternalIdDetails.previous_value.validator),
]

MemberChangeExternalIdType.description.validator = bv.String()
MemberChangeExternalIdType._all_field_names_ = set(['description'])
MemberChangeExternalIdType._all_fields_ = [('description', MemberChangeExternalIdType.description.validator)]

MemberChangeMembershipTypeDetails.prev_value.validator = TeamMembershipType_validator
MemberChangeMembershipTypeDetails.new_value.validator = TeamMembershipType_validator
MemberChangeMembershipTypeDetails._all_field_names_ = set([
    'prev_value',
    'new_value',
])
MemberChangeMembershipTypeDetails._all_fields_ = [
    ('prev_value', MemberChangeMembershipTypeDetails.prev_value.validator),
    ('new_value', MemberChangeMembershipTypeDetails.new_value.validator),
]

MemberChangeMembershipTypeType.description.validator = bv.String()
MemberChangeMembershipTypeType._all_field_names_ = set(['description'])
MemberChangeMembershipTypeType._all_fields_ = [('description', MemberChangeMembershipTypeType.description.validator)]

MemberChangeNameDetails.new_value.validator = UserNameLogInfo_validator
MemberChangeNameDetails.previous_value.validator = bv.Nullable(UserNameLogInfo_validator)
MemberChangeNameDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberChangeNameDetails._all_fields_ = [
    ('new_value', MemberChangeNameDetails.new_value.validator),
    ('previous_value', MemberChangeNameDetails.previous_value.validator),
]

MemberChangeNameType.description.validator = bv.String()
MemberChangeNameType._all_field_names_ = set(['description'])
MemberChangeNameType._all_fields_ = [('description', MemberChangeNameType.description.validator)]

MemberChangeResellerRoleDetails.new_value.validator = ResellerRole_validator
MemberChangeResellerRoleDetails.previous_value.validator = ResellerRole_validator
MemberChangeResellerRoleDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberChangeResellerRoleDetails._all_fields_ = [
    ('new_value', MemberChangeResellerRoleDetails.new_value.validator),
    ('previous_value', MemberChangeResellerRoleDetails.previous_value.validator),
]

MemberChangeResellerRoleType.description.validator = bv.String()
MemberChangeResellerRoleType._all_field_names_ = set(['description'])
MemberChangeResellerRoleType._all_fields_ = [('description', MemberChangeResellerRoleType.description.validator)]

MemberChangeStatusDetails.previous_value.validator = bv.Nullable(MemberStatus_validator)
MemberChangeStatusDetails.new_value.validator = MemberStatus_validator
MemberChangeStatusDetails.action.validator = bv.Nullable(ActionDetails_validator)
MemberChangeStatusDetails.new_team.validator = bv.Nullable(bv.String())
MemberChangeStatusDetails.previous_team.validator = bv.Nullable(bv.String())
MemberChangeStatusDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
    'action',
    'new_team',
    'previous_team',
])
MemberChangeStatusDetails._all_fields_ = [
    ('previous_value', MemberChangeStatusDetails.previous_value.validator),
    ('new_value', MemberChangeStatusDetails.new_value.validator),
    ('action', MemberChangeStatusDetails.action.validator),
    ('new_team', MemberChangeStatusDetails.new_team.validator),
    ('previous_team', MemberChangeStatusDetails.previous_team.validator),
]

MemberChangeStatusType.description.validator = bv.String()
MemberChangeStatusType._all_field_names_ = set(['description'])
MemberChangeStatusType._all_fields_ = [('description', MemberChangeStatusType.description.validator)]

MemberDeleteManualContactsDetails._all_field_names_ = set([])
MemberDeleteManualContactsDetails._all_fields_ = []

MemberDeleteManualContactsType.description.validator = bv.String()
MemberDeleteManualContactsType._all_field_names_ = set(['description'])
MemberDeleteManualContactsType._all_fields_ = [('description', MemberDeleteManualContactsType.description.validator)]

MemberDeleteProfilePhotoDetails._all_field_names_ = set([])
MemberDeleteProfilePhotoDetails._all_fields_ = []

MemberDeleteProfilePhotoType.description.validator = bv.String()
MemberDeleteProfilePhotoType._all_field_names_ = set(['description'])
MemberDeleteProfilePhotoType._all_fields_ = [('description', MemberDeleteProfilePhotoType.description.validator)]

MemberPermanentlyDeleteAccountContentsDetails._all_field_names_ = set([])
MemberPermanentlyDeleteAccountContentsDetails._all_fields_ = []

MemberPermanentlyDeleteAccountContentsType.description.validator = bv.String()
MemberPermanentlyDeleteAccountContentsType._all_field_names_ = set(['description'])
MemberPermanentlyDeleteAccountContentsType._all_fields_ = [('description', MemberPermanentlyDeleteAccountContentsType.description.validator)]

MemberRemoveActionType._delete_validator = bv.Void()
MemberRemoveActionType._leave_validator = bv.Void()
MemberRemoveActionType._offboard_validator = bv.Void()
MemberRemoveActionType._offboard_and_retain_team_folders_validator = bv.Void()
MemberRemoveActionType._other_validator = bv.Void()
MemberRemoveActionType._tagmap = {
    'delete': MemberRemoveActionType._delete_validator,
    'leave': MemberRemoveActionType._leave_validator,
    'offboard': MemberRemoveActionType._offboard_validator,
    'offboard_and_retain_team_folders': MemberRemoveActionType._offboard_and_retain_team_folders_validator,
    'other': MemberRemoveActionType._other_validator,
}

MemberRemoveActionType.delete = MemberRemoveActionType('delete')
MemberRemoveActionType.leave = MemberRemoveActionType('leave')
MemberRemoveActionType.offboard = MemberRemoveActionType('offboard')
MemberRemoveActionType.offboard_and_retain_team_folders = MemberRemoveActionType('offboard_and_retain_team_folders')
MemberRemoveActionType.other = MemberRemoveActionType('other')

MemberRemoveExternalIdDetails.previous_value.validator = team_common.MemberExternalId_validator
MemberRemoveExternalIdDetails._all_field_names_ = set(['previous_value'])
MemberRemoveExternalIdDetails._all_fields_ = [('previous_value', MemberRemoveExternalIdDetails.previous_value.validator)]

MemberRemoveExternalIdType.description.validator = bv.String()
MemberRemoveExternalIdType._all_field_names_ = set(['description'])
MemberRemoveExternalIdType._all_fields_ = [('description', MemberRemoveExternalIdType.description.validator)]

MemberRequestsChangePolicyDetails.new_value.validator = MemberRequestsPolicy_validator
MemberRequestsChangePolicyDetails.previous_value.validator = bv.Nullable(MemberRequestsPolicy_validator)
MemberRequestsChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberRequestsChangePolicyDetails._all_fields_ = [
    ('new_value', MemberRequestsChangePolicyDetails.new_value.validator),
    ('previous_value', MemberRequestsChangePolicyDetails.previous_value.validator),
]

MemberRequestsChangePolicyType.description.validator = bv.String()
MemberRequestsChangePolicyType._all_field_names_ = set(['description'])
MemberRequestsChangePolicyType._all_fields_ = [('description', MemberRequestsChangePolicyType.description.validator)]

MemberRequestsPolicy._auto_accept_validator = bv.Void()
MemberRequestsPolicy._disabled_validator = bv.Void()
MemberRequestsPolicy._require_approval_validator = bv.Void()
MemberRequestsPolicy._other_validator = bv.Void()
MemberRequestsPolicy._tagmap = {
    'auto_accept': MemberRequestsPolicy._auto_accept_validator,
    'disabled': MemberRequestsPolicy._disabled_validator,
    'require_approval': MemberRequestsPolicy._require_approval_validator,
    'other': MemberRequestsPolicy._other_validator,
}

MemberRequestsPolicy.auto_accept = MemberRequestsPolicy('auto_accept')
MemberRequestsPolicy.disabled = MemberRequestsPolicy('disabled')
MemberRequestsPolicy.require_approval = MemberRequestsPolicy('require_approval')
MemberRequestsPolicy.other = MemberRequestsPolicy('other')

MemberSendInvitePolicy._disabled_validator = bv.Void()
MemberSendInvitePolicy._everyone_validator = bv.Void()
MemberSendInvitePolicy._specific_members_validator = bv.Void()
MemberSendInvitePolicy._other_validator = bv.Void()
MemberSendInvitePolicy._tagmap = {
    'disabled': MemberSendInvitePolicy._disabled_validator,
    'everyone': MemberSendInvitePolicy._everyone_validator,
    'specific_members': MemberSendInvitePolicy._specific_members_validator,
    'other': MemberSendInvitePolicy._other_validator,
}

MemberSendInvitePolicy.disabled = MemberSendInvitePolicy('disabled')
MemberSendInvitePolicy.everyone = MemberSendInvitePolicy('everyone')
MemberSendInvitePolicy.specific_members = MemberSendInvitePolicy('specific_members')
MemberSendInvitePolicy.other = MemberSendInvitePolicy('other')

MemberSendInvitePolicyChangedDetails.new_value.validator = MemberSendInvitePolicy_validator
MemberSendInvitePolicyChangedDetails.previous_value.validator = MemberSendInvitePolicy_validator
MemberSendInvitePolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberSendInvitePolicyChangedDetails._all_fields_ = [
    ('new_value', MemberSendInvitePolicyChangedDetails.new_value.validator),
    ('previous_value', MemberSendInvitePolicyChangedDetails.previous_value.validator),
]

MemberSendInvitePolicyChangedType.description.validator = bv.String()
MemberSendInvitePolicyChangedType._all_field_names_ = set(['description'])
MemberSendInvitePolicyChangedType._all_fields_ = [('description', MemberSendInvitePolicyChangedType.description.validator)]

MemberSetProfilePhotoDetails._all_field_names_ = set([])
MemberSetProfilePhotoDetails._all_fields_ = []

MemberSetProfilePhotoType.description.validator = bv.String()
MemberSetProfilePhotoType._all_field_names_ = set(['description'])
MemberSetProfilePhotoType._all_fields_ = [('description', MemberSetProfilePhotoType.description.validator)]

MemberSpaceLimitsAddCustomQuotaDetails.new_value.validator = bv.UInt64()
MemberSpaceLimitsAddCustomQuotaDetails._all_field_names_ = set(['new_value'])
MemberSpaceLimitsAddCustomQuotaDetails._all_fields_ = [('new_value', MemberSpaceLimitsAddCustomQuotaDetails.new_value.validator)]

MemberSpaceLimitsAddCustomQuotaType.description.validator = bv.String()
MemberSpaceLimitsAddCustomQuotaType._all_field_names_ = set(['description'])
MemberSpaceLimitsAddCustomQuotaType._all_fields_ = [('description', MemberSpaceLimitsAddCustomQuotaType.description.validator)]

MemberSpaceLimitsAddExceptionDetails._all_field_names_ = set([])
MemberSpaceLimitsAddExceptionDetails._all_fields_ = []

MemberSpaceLimitsAddExceptionType.description.validator = bv.String()
MemberSpaceLimitsAddExceptionType._all_field_names_ = set(['description'])
MemberSpaceLimitsAddExceptionType._all_fields_ = [('description', MemberSpaceLimitsAddExceptionType.description.validator)]

MemberSpaceLimitsChangeCapsTypePolicyDetails.previous_value.validator = SpaceCapsType_validator
MemberSpaceLimitsChangeCapsTypePolicyDetails.new_value.validator = SpaceCapsType_validator
MemberSpaceLimitsChangeCapsTypePolicyDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
MemberSpaceLimitsChangeCapsTypePolicyDetails._all_fields_ = [
    ('previous_value', MemberSpaceLimitsChangeCapsTypePolicyDetails.previous_value.validator),
    ('new_value', MemberSpaceLimitsChangeCapsTypePolicyDetails.new_value.validator),
]

MemberSpaceLimitsChangeCapsTypePolicyType.description.validator = bv.String()
MemberSpaceLimitsChangeCapsTypePolicyType._all_field_names_ = set(['description'])
MemberSpaceLimitsChangeCapsTypePolicyType._all_fields_ = [('description', MemberSpaceLimitsChangeCapsTypePolicyType.description.validator)]

MemberSpaceLimitsChangeCustomQuotaDetails.previous_value.validator = bv.UInt64()
MemberSpaceLimitsChangeCustomQuotaDetails.new_value.validator = bv.UInt64()
MemberSpaceLimitsChangeCustomQuotaDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
MemberSpaceLimitsChangeCustomQuotaDetails._all_fields_ = [
    ('previous_value', MemberSpaceLimitsChangeCustomQuotaDetails.previous_value.validator),
    ('new_value', MemberSpaceLimitsChangeCustomQuotaDetails.new_value.validator),
]

MemberSpaceLimitsChangeCustomQuotaType.description.validator = bv.String()
MemberSpaceLimitsChangeCustomQuotaType._all_field_names_ = set(['description'])
MemberSpaceLimitsChangeCustomQuotaType._all_fields_ = [('description', MemberSpaceLimitsChangeCustomQuotaType.description.validator)]

MemberSpaceLimitsChangePolicyDetails.previous_value.validator = bv.Nullable(bv.UInt64())
MemberSpaceLimitsChangePolicyDetails.new_value.validator = bv.Nullable(bv.UInt64())
MemberSpaceLimitsChangePolicyDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
MemberSpaceLimitsChangePolicyDetails._all_fields_ = [
    ('previous_value', MemberSpaceLimitsChangePolicyDetails.previous_value.validator),
    ('new_value', MemberSpaceLimitsChangePolicyDetails.new_value.validator),
]

MemberSpaceLimitsChangePolicyType.description.validator = bv.String()
MemberSpaceLimitsChangePolicyType._all_field_names_ = set(['description'])
MemberSpaceLimitsChangePolicyType._all_fields_ = [('description', MemberSpaceLimitsChangePolicyType.description.validator)]

MemberSpaceLimitsChangeStatusDetails.previous_value.validator = SpaceLimitsStatus_validator
MemberSpaceLimitsChangeStatusDetails.new_value.validator = SpaceLimitsStatus_validator
MemberSpaceLimitsChangeStatusDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
MemberSpaceLimitsChangeStatusDetails._all_fields_ = [
    ('previous_value', MemberSpaceLimitsChangeStatusDetails.previous_value.validator),
    ('new_value', MemberSpaceLimitsChangeStatusDetails.new_value.validator),
]

MemberSpaceLimitsChangeStatusType.description.validator = bv.String()
MemberSpaceLimitsChangeStatusType._all_field_names_ = set(['description'])
MemberSpaceLimitsChangeStatusType._all_fields_ = [('description', MemberSpaceLimitsChangeStatusType.description.validator)]

MemberSpaceLimitsRemoveCustomQuotaDetails._all_field_names_ = set([])
MemberSpaceLimitsRemoveCustomQuotaDetails._all_fields_ = []

MemberSpaceLimitsRemoveCustomQuotaType.description.validator = bv.String()
MemberSpaceLimitsRemoveCustomQuotaType._all_field_names_ = set(['description'])
MemberSpaceLimitsRemoveCustomQuotaType._all_fields_ = [('description', MemberSpaceLimitsRemoveCustomQuotaType.description.validator)]

MemberSpaceLimitsRemoveExceptionDetails._all_field_names_ = set([])
MemberSpaceLimitsRemoveExceptionDetails._all_fields_ = []

MemberSpaceLimitsRemoveExceptionType.description.validator = bv.String()
MemberSpaceLimitsRemoveExceptionType._all_field_names_ = set(['description'])
MemberSpaceLimitsRemoveExceptionType._all_fields_ = [('description', MemberSpaceLimitsRemoveExceptionType.description.validator)]

MemberStatus._active_validator = bv.Void()
MemberStatus._invited_validator = bv.Void()
MemberStatus._moved_to_another_team_validator = bv.Void()
MemberStatus._not_joined_validator = bv.Void()
MemberStatus._removed_validator = bv.Void()
MemberStatus._suspended_validator = bv.Void()
MemberStatus._other_validator = bv.Void()
MemberStatus._tagmap = {
    'active': MemberStatus._active_validator,
    'invited': MemberStatus._invited_validator,
    'moved_to_another_team': MemberStatus._moved_to_another_team_validator,
    'not_joined': MemberStatus._not_joined_validator,
    'removed': MemberStatus._removed_validator,
    'suspended': MemberStatus._suspended_validator,
    'other': MemberStatus._other_validator,
}

MemberStatus.active = MemberStatus('active')
MemberStatus.invited = MemberStatus('invited')
MemberStatus.moved_to_another_team = MemberStatus('moved_to_another_team')
MemberStatus.not_joined = MemberStatus('not_joined')
MemberStatus.removed = MemberStatus('removed')
MemberStatus.suspended = MemberStatus('suspended')
MemberStatus.other = MemberStatus('other')

MemberSuggestDetails.suggested_members.validator = bv.List(EmailAddress_validator)
MemberSuggestDetails._all_field_names_ = set(['suggested_members'])
MemberSuggestDetails._all_fields_ = [('suggested_members', MemberSuggestDetails.suggested_members.validator)]

MemberSuggestType.description.validator = bv.String()
MemberSuggestType._all_field_names_ = set(['description'])
MemberSuggestType._all_fields_ = [('description', MemberSuggestType.description.validator)]

MemberSuggestionsChangePolicyDetails.new_value.validator = MemberSuggestionsPolicy_validator
MemberSuggestionsChangePolicyDetails.previous_value.validator = bv.Nullable(MemberSuggestionsPolicy_validator)
MemberSuggestionsChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MemberSuggestionsChangePolicyDetails._all_fields_ = [
    ('new_value', MemberSuggestionsChangePolicyDetails.new_value.validator),
    ('previous_value', MemberSuggestionsChangePolicyDetails.previous_value.validator),
]

MemberSuggestionsChangePolicyType.description.validator = bv.String()
MemberSuggestionsChangePolicyType._all_field_names_ = set(['description'])
MemberSuggestionsChangePolicyType._all_fields_ = [('description', MemberSuggestionsChangePolicyType.description.validator)]

MemberSuggestionsPolicy._disabled_validator = bv.Void()
MemberSuggestionsPolicy._enabled_validator = bv.Void()
MemberSuggestionsPolicy._other_validator = bv.Void()
MemberSuggestionsPolicy._tagmap = {
    'disabled': MemberSuggestionsPolicy._disabled_validator,
    'enabled': MemberSuggestionsPolicy._enabled_validator,
    'other': MemberSuggestionsPolicy._other_validator,
}

MemberSuggestionsPolicy.disabled = MemberSuggestionsPolicy('disabled')
MemberSuggestionsPolicy.enabled = MemberSuggestionsPolicy('enabled')
MemberSuggestionsPolicy.other = MemberSuggestionsPolicy('other')

MemberTransferAccountContentsDetails._all_field_names_ = set([])
MemberTransferAccountContentsDetails._all_fields_ = []

MemberTransferAccountContentsType.description.validator = bv.String()
MemberTransferAccountContentsType._all_field_names_ = set(['description'])
MemberTransferAccountContentsType._all_fields_ = [('description', MemberTransferAccountContentsType.description.validator)]

MemberTransferredInternalFields.source_team_id.validator = team_common.TeamId_validator
MemberTransferredInternalFields.target_team_id.validator = team_common.TeamId_validator
MemberTransferredInternalFields._all_field_names_ = set([
    'source_team_id',
    'target_team_id',
])
MemberTransferredInternalFields._all_fields_ = [
    ('source_team_id', MemberTransferredInternalFields.source_team_id.validator),
    ('target_team_id', MemberTransferredInternalFields.target_team_id.validator),
]

MicrosoftOfficeAddinChangePolicyDetails.new_value.validator = MicrosoftOfficeAddinPolicy_validator
MicrosoftOfficeAddinChangePolicyDetails.previous_value.validator = bv.Nullable(MicrosoftOfficeAddinPolicy_validator)
MicrosoftOfficeAddinChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
MicrosoftOfficeAddinChangePolicyDetails._all_fields_ = [
    ('new_value', MicrosoftOfficeAddinChangePolicyDetails.new_value.validator),
    ('previous_value', MicrosoftOfficeAddinChangePolicyDetails.previous_value.validator),
]

MicrosoftOfficeAddinChangePolicyType.description.validator = bv.String()
MicrosoftOfficeAddinChangePolicyType._all_field_names_ = set(['description'])
MicrosoftOfficeAddinChangePolicyType._all_fields_ = [('description', MicrosoftOfficeAddinChangePolicyType.description.validator)]

MicrosoftOfficeAddinPolicy._disabled_validator = bv.Void()
MicrosoftOfficeAddinPolicy._enabled_validator = bv.Void()
MicrosoftOfficeAddinPolicy._other_validator = bv.Void()
MicrosoftOfficeAddinPolicy._tagmap = {
    'disabled': MicrosoftOfficeAddinPolicy._disabled_validator,
    'enabled': MicrosoftOfficeAddinPolicy._enabled_validator,
    'other': MicrosoftOfficeAddinPolicy._other_validator,
}

MicrosoftOfficeAddinPolicy.disabled = MicrosoftOfficeAddinPolicy('disabled')
MicrosoftOfficeAddinPolicy.enabled = MicrosoftOfficeAddinPolicy('enabled')
MicrosoftOfficeAddinPolicy.other = MicrosoftOfficeAddinPolicy('other')

MissingDetails.source_event_fields.validator = bv.Nullable(bv.String())
MissingDetails._all_field_names_ = set(['source_event_fields'])
MissingDetails._all_fields_ = [('source_event_fields', MissingDetails.source_event_fields.validator)]

MobileDeviceSessionLogInfo.session_info.validator = bv.Nullable(MobileSessionLogInfo_validator)
MobileDeviceSessionLogInfo.device_name.validator = bv.String()
MobileDeviceSessionLogInfo.client_type.validator = team.MobileClientPlatform_validator
MobileDeviceSessionLogInfo.client_version.validator = bv.Nullable(bv.String())
MobileDeviceSessionLogInfo.os_version.validator = bv.Nullable(bv.String())
MobileDeviceSessionLogInfo.last_carrier.validator = bv.Nullable(bv.String())
MobileDeviceSessionLogInfo._field_names_ = set([
    'session_info',
    'device_name',
    'client_type',
    'client_version',
    'os_version',
    'last_carrier',
])
MobileDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(MobileDeviceSessionLogInfo._field_names_)
MobileDeviceSessionLogInfo._fields_ = [
    ('session_info', MobileDeviceSessionLogInfo.session_info.validator),
    ('device_name', MobileDeviceSessionLogInfo.device_name.validator),
    ('client_type', MobileDeviceSessionLogInfo.client_type.validator),
    ('client_version', MobileDeviceSessionLogInfo.client_version.validator),
    ('os_version', MobileDeviceSessionLogInfo.os_version.validator),
    ('last_carrier', MobileDeviceSessionLogInfo.last_carrier.validator),
]
MobileDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + MobileDeviceSessionLogInfo._fields_

MobileSessionLogInfo._field_names_ = set([])
MobileSessionLogInfo._all_field_names_ = SessionLogInfo._all_field_names_.union(MobileSessionLogInfo._field_names_)
MobileSessionLogInfo._fields_ = []
MobileSessionLogInfo._all_fields_ = SessionLogInfo._all_fields_ + MobileSessionLogInfo._fields_

NamespaceRelativePathLogInfo.ns_id.validator = bv.Nullable(NamespaceId_validator)
NamespaceRelativePathLogInfo.relative_path.validator = bv.Nullable(FilePath_validator)
NamespaceRelativePathLogInfo.is_shared_namespace.validator = bv.Nullable(bv.Boolean())
NamespaceRelativePathLogInfo._all_field_names_ = set([
    'ns_id',
    'relative_path',
    'is_shared_namespace',
])
NamespaceRelativePathLogInfo._all_fields_ = [
    ('ns_id', NamespaceRelativePathLogInfo.ns_id.validator),
    ('relative_path', NamespaceRelativePathLogInfo.relative_path.validator),
    ('is_shared_namespace', NamespaceRelativePathLogInfo.is_shared_namespace.validator),
]

NetworkControlChangePolicyDetails.new_value.validator = NetworkControlPolicy_validator
NetworkControlChangePolicyDetails.previous_value.validator = bv.Nullable(NetworkControlPolicy_validator)
NetworkControlChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
NetworkControlChangePolicyDetails._all_fields_ = [
    ('new_value', NetworkControlChangePolicyDetails.new_value.validator),
    ('previous_value', NetworkControlChangePolicyDetails.previous_value.validator),
]

NetworkControlChangePolicyType.description.validator = bv.String()
NetworkControlChangePolicyType._all_field_names_ = set(['description'])
NetworkControlChangePolicyType._all_fields_ = [('description', NetworkControlChangePolicyType.description.validator)]

NetworkControlPolicy._disabled_validator = bv.Void()
NetworkControlPolicy._enabled_validator = bv.Void()
NetworkControlPolicy._other_validator = bv.Void()
NetworkControlPolicy._tagmap = {
    'disabled': NetworkControlPolicy._disabled_validator,
    'enabled': NetworkControlPolicy._enabled_validator,
    'other': NetworkControlPolicy._other_validator,
}

NetworkControlPolicy.disabled = NetworkControlPolicy('disabled')
NetworkControlPolicy.enabled = NetworkControlPolicy('enabled')
NetworkControlPolicy.other = NetworkControlPolicy('other')

NoExpirationLinkGenCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator
NoExpirationLinkGenCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator
NoExpirationLinkGenCreateReportDetails._all_field_names_ = set([
    'start_date',
    'end_date',
])
NoExpirationLinkGenCreateReportDetails._all_fields_ = [
    ('start_date', NoExpirationLinkGenCreateReportDetails.start_date.validator),
    ('end_date', NoExpirationLinkGenCreateReportDetails.end_date.validator),
]

NoExpirationLinkGenCreateReportType.description.validator = bv.String()
NoExpirationLinkGenCreateReportType._all_field_names_ = set(['description'])
NoExpirationLinkGenCreateReportType._all_fields_ = [('description', NoExpirationLinkGenCreateReportType.description.validator)]

NoExpirationLinkGenReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator
NoExpirationLinkGenReportFailedDetails._all_field_names_ = set(['failure_reason'])
NoExpirationLinkGenReportFailedDetails._all_fields_ = [('failure_reason', NoExpirationLinkGenReportFailedDetails.failure_reason.validator)]

NoExpirationLinkGenReportFailedType.description.validator = bv.String()
NoExpirationLinkGenReportFailedType._all_field_names_ = set(['description'])
NoExpirationLinkGenReportFailedType._all_fields_ = [('description', NoExpirationLinkGenReportFailedType.description.validator)]

NoPasswordLinkGenCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator
NoPasswordLinkGenCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator
NoPasswordLinkGenCreateReportDetails._all_field_names_ = set([
    'start_date',
    'end_date',
])
NoPasswordLinkGenCreateReportDetails._all_fields_ = [
    ('start_date', NoPasswordLinkGenCreateReportDetails.start_date.validator),
    ('end_date', NoPasswordLinkGenCreateReportDetails.end_date.validator),
]

NoPasswordLinkGenCreateReportType.description.validator = bv.String()
NoPasswordLinkGenCreateReportType._all_field_names_ = set(['description'])
NoPasswordLinkGenCreateReportType._all_fields_ = [('description', NoPasswordLinkGenCreateReportType.description.validator)]

NoPasswordLinkGenReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator
NoPasswordLinkGenReportFailedDetails._all_field_names_ = set(['failure_reason'])
NoPasswordLinkGenReportFailedDetails._all_fields_ = [('failure_reason', NoPasswordLinkGenReportFailedDetails.failure_reason.validator)]

NoPasswordLinkGenReportFailedType.description.validator = bv.String()
NoPasswordLinkGenReportFailedType._all_field_names_ = set(['description'])
NoPasswordLinkGenReportFailedType._all_fields_ = [('description', NoPasswordLinkGenReportFailedType.description.validator)]

NoPasswordLinkViewCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator
NoPasswordLinkViewCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator
NoPasswordLinkViewCreateReportDetails._all_field_names_ = set([
    'start_date',
    'end_date',
])
NoPasswordLinkViewCreateReportDetails._all_fields_ = [
    ('start_date', NoPasswordLinkViewCreateReportDetails.start_date.validator),
    ('end_date', NoPasswordLinkViewCreateReportDetails.end_date.validator),
]

NoPasswordLinkViewCreateReportType.description.validator = bv.String()
NoPasswordLinkViewCreateReportType._all_field_names_ = set(['description'])
NoPasswordLinkViewCreateReportType._all_fields_ = [('description', NoPasswordLinkViewCreateReportType.description.validator)]

NoPasswordLinkViewReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator
NoPasswordLinkViewReportFailedDetails._all_field_names_ = set(['failure_reason'])
NoPasswordLinkViewReportFailedDetails._all_fields_ = [('failure_reason', NoPasswordLinkViewReportFailedDetails.failure_reason.validator)]

NoPasswordLinkViewReportFailedType.description.validator = bv.String()
NoPasswordLinkViewReportFailedType._all_field_names_ = set(['description'])
NoPasswordLinkViewReportFailedType._all_fields_ = [('description', NoPasswordLinkViewReportFailedType.description.validator)]

UserLogInfo.account_id.validator = bv.Nullable(users_common.AccountId_validator)
UserLogInfo.display_name.validator = bv.Nullable(common.DisplayNameLegacy_validator)
UserLogInfo.email.validator = bv.Nullable(EmailAddress_validator)
UserLogInfo._field_names_ = set([
    'account_id',
    'display_name',
    'email',
])
UserLogInfo._all_field_names_ = UserLogInfo._field_names_
UserLogInfo._fields_ = [
    ('account_id', UserLogInfo.account_id.validator),
    ('display_name', UserLogInfo.display_name.validator),
    ('email', UserLogInfo.email.validator),
]
UserLogInfo._all_fields_ = UserLogInfo._fields_

UserLogInfo._tag_to_subtype_ = {
    ('team_member',): TeamMemberLogInfo_validator,
    ('trusted_non_team_member',): TrustedNonTeamMemberLogInfo_validator,
    ('non_team_member',): NonTeamMemberLogInfo_validator,
}
UserLogInfo._pytype_to_tag_and_subtype_ = {
    TeamMemberLogInfo: (('team_member',), TeamMemberLogInfo_validator),
    TrustedNonTeamMemberLogInfo: (('trusted_non_team_member',), TrustedNonTeamMemberLogInfo_validator),
    NonTeamMemberLogInfo: (('non_team_member',), NonTeamMemberLogInfo_validator),
}
UserLogInfo._is_catch_all_ = True

NonTeamMemberLogInfo._field_names_ = set([])
NonTeamMemberLogInfo._all_field_names_ = UserLogInfo._all_field_names_.union(NonTeamMemberLogInfo._field_names_)
NonTeamMemberLogInfo._fields_ = []
NonTeamMemberLogInfo._all_fields_ = UserLogInfo._all_fields_ + NonTeamMemberLogInfo._fields_

NonTrustedTeamDetails.team.validator = bv.String()
NonTrustedTeamDetails._all_field_names_ = set(['team'])
NonTrustedTeamDetails._all_fields_ = [('team', NonTrustedTeamDetails.team.validator)]

NoteAclInviteOnlyDetails._all_field_names_ = set([])
NoteAclInviteOnlyDetails._all_fields_ = []

NoteAclInviteOnlyType.description.validator = bv.String()
NoteAclInviteOnlyType._all_field_names_ = set(['description'])
NoteAclInviteOnlyType._all_fields_ = [('description', NoteAclInviteOnlyType.description.validator)]

NoteAclLinkDetails._all_field_names_ = set([])
NoteAclLinkDetails._all_fields_ = []

NoteAclLinkType.description.validator = bv.String()
NoteAclLinkType._all_field_names_ = set(['description'])
NoteAclLinkType._all_fields_ = [('description', NoteAclLinkType.description.validator)]

NoteAclTeamLinkDetails._all_field_names_ = set([])
NoteAclTeamLinkDetails._all_fields_ = []

NoteAclTeamLinkType.description.validator = bv.String()
NoteAclTeamLinkType._all_field_names_ = set(['description'])
NoteAclTeamLinkType._all_fields_ = [('description', NoteAclTeamLinkType.description.validator)]

NoteShareReceiveDetails._all_field_names_ = set([])
NoteShareReceiveDetails._all_fields_ = []

NoteShareReceiveType.description.validator = bv.String()
NoteShareReceiveType._all_field_names_ = set(['description'])
NoteShareReceiveType._all_fields_ = [('description', NoteShareReceiveType.description.validator)]

NoteSharedDetails._all_field_names_ = set([])
NoteSharedDetails._all_fields_ = []

NoteSharedType.description.validator = bv.String()
NoteSharedType._all_field_names_ = set(['description'])
NoteSharedType._all_fields_ = [('description', NoteSharedType.description.validator)]

ObjectLabelAddedDetails.label_type.validator = LabelType_validator
ObjectLabelAddedDetails._all_field_names_ = set(['label_type'])
ObjectLabelAddedDetails._all_fields_ = [('label_type', ObjectLabelAddedDetails.label_type.validator)]

ObjectLabelAddedType.description.validator = bv.String()
ObjectLabelAddedType._all_field_names_ = set(['description'])
ObjectLabelAddedType._all_fields_ = [('description', ObjectLabelAddedType.description.validator)]

ObjectLabelRemovedDetails.label_type.validator = LabelType_validator
ObjectLabelRemovedDetails._all_field_names_ = set(['label_type'])
ObjectLabelRemovedDetails._all_fields_ = [('label_type', ObjectLabelRemovedDetails.label_type.validator)]

ObjectLabelRemovedType.description.validator = bv.String()
ObjectLabelRemovedType._all_field_names_ = set(['description'])
ObjectLabelRemovedType._all_fields_ = [('description', ObjectLabelRemovedType.description.validator)]

ObjectLabelUpdatedValueDetails.label_type.validator = LabelType_validator
ObjectLabelUpdatedValueDetails._all_field_names_ = set(['label_type'])
ObjectLabelUpdatedValueDetails._all_fields_ = [('label_type', ObjectLabelUpdatedValueDetails.label_type.validator)]

ObjectLabelUpdatedValueType.description.validator = bv.String()
ObjectLabelUpdatedValueType._all_field_names_ = set(['description'])
ObjectLabelUpdatedValueType._all_fields_ = [('description', ObjectLabelUpdatedValueType.description.validator)]

OpenNoteSharedDetails._all_field_names_ = set([])
OpenNoteSharedDetails._all_fields_ = []

OpenNoteSharedType.description.validator = bv.String()
OpenNoteSharedType._all_field_names_ = set(['description'])
OpenNoteSharedType._all_fields_ = [('description', OpenNoteSharedType.description.validator)]

OrganizationDetails.organization.validator = bv.String()
OrganizationDetails._all_field_names_ = set(['organization'])
OrganizationDetails._all_fields_ = [('organization', OrganizationDetails.organization.validator)]

OrganizationName.organization.validator = bv.String()
OrganizationName._all_field_names_ = set(['organization'])
OrganizationName._all_fields_ = [('organization', OrganizationName.organization.validator)]

OrganizeFolderWithTidyDetails._all_field_names_ = set([])
OrganizeFolderWithTidyDetails._all_fields_ = []

OrganizeFolderWithTidyType.description.validator = bv.String()
OrganizeFolderWithTidyType._all_field_names_ = set(['description'])
OrganizeFolderWithTidyType._all_fields_ = [('description', OrganizeFolderWithTidyType.description.validator)]

OriginLogInfo.geo_location.validator = bv.Nullable(GeoLocationLogInfo_validator)
OriginLogInfo.access_method.validator = AccessMethodLogInfo_validator
OriginLogInfo._all_field_names_ = set([
    'geo_location',
    'access_method',
])
OriginLogInfo._all_fields_ = [
    ('geo_location', OriginLogInfo.geo_location.validator),
    ('access_method', OriginLogInfo.access_method.validator),
]

OutdatedLinkViewCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator
OutdatedLinkViewCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator
OutdatedLinkViewCreateReportDetails._all_field_names_ = set([
    'start_date',
    'end_date',
])
OutdatedLinkViewCreateReportDetails._all_fields_ = [
    ('start_date', OutdatedLinkViewCreateReportDetails.start_date.validator),
    ('end_date', OutdatedLinkViewCreateReportDetails.end_date.validator),
]

OutdatedLinkViewCreateReportType.description.validator = bv.String()
OutdatedLinkViewCreateReportType._all_field_names_ = set(['description'])
OutdatedLinkViewCreateReportType._all_fields_ = [('description', OutdatedLinkViewCreateReportType.description.validator)]

OutdatedLinkViewReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator
OutdatedLinkViewReportFailedDetails._all_field_names_ = set(['failure_reason'])
OutdatedLinkViewReportFailedDetails._all_fields_ = [('failure_reason', OutdatedLinkViewReportFailedDetails.failure_reason.validator)]

OutdatedLinkViewReportFailedType.description.validator = bv.String()
OutdatedLinkViewReportFailedType._all_field_names_ = set(['description'])
OutdatedLinkViewReportFailedType._all_fields_ = [('description', OutdatedLinkViewReportFailedType.description.validator)]

PaperAccessType._commenter_validator = bv.Void()
PaperAccessType._editor_validator = bv.Void()
PaperAccessType._viewer_validator = bv.Void()
PaperAccessType._other_validator = bv.Void()
PaperAccessType._tagmap = {
    'commenter': PaperAccessType._commenter_validator,
    'editor': PaperAccessType._editor_validator,
    'viewer': PaperAccessType._viewer_validator,
    'other': PaperAccessType._other_validator,
}

PaperAccessType.commenter = PaperAccessType('commenter')
PaperAccessType.editor = PaperAccessType('editor')
PaperAccessType.viewer = PaperAccessType('viewer')
PaperAccessType.other = PaperAccessType('other')

PaperAdminExportStartDetails._all_field_names_ = set([])
PaperAdminExportStartDetails._all_fields_ = []

PaperAdminExportStartType.description.validator = bv.String()
PaperAdminExportStartType._all_field_names_ = set(['description'])
PaperAdminExportStartType._all_fields_ = [('description', PaperAdminExportStartType.description.validator)]

PaperChangeDeploymentPolicyDetails.new_value.validator = team_policies.PaperDeploymentPolicy_validator
PaperChangeDeploymentPolicyDetails.previous_value.validator = bv.Nullable(team_policies.PaperDeploymentPolicy_validator)
PaperChangeDeploymentPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
PaperChangeDeploymentPolicyDetails._all_fields_ = [
    ('new_value', PaperChangeDeploymentPolicyDetails.new_value.validator),
    ('previous_value', PaperChangeDeploymentPolicyDetails.previous_value.validator),
]

PaperChangeDeploymentPolicyType.description.validator = bv.String()
PaperChangeDeploymentPolicyType._all_field_names_ = set(['description'])
PaperChangeDeploymentPolicyType._all_fields_ = [('description', PaperChangeDeploymentPolicyType.description.validator)]

PaperChangeMemberLinkPolicyDetails.new_value.validator = PaperMemberPolicy_validator
PaperChangeMemberLinkPolicyDetails._all_field_names_ = set(['new_value'])
PaperChangeMemberLinkPolicyDetails._all_fields_ = [('new_value', PaperChangeMemberLinkPolicyDetails.new_value.validator)]

PaperChangeMemberLinkPolicyType.description.validator = bv.String()
PaperChangeMemberLinkPolicyType._all_field_names_ = set(['description'])
PaperChangeMemberLinkPolicyType._all_fields_ = [('description', PaperChangeMemberLinkPolicyType.description.validator)]

PaperChangeMemberPolicyDetails.new_value.validator = PaperMemberPolicy_validator
PaperChangeMemberPolicyDetails.previous_value.validator = bv.Nullable(PaperMemberPolicy_validator)
PaperChangeMemberPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
PaperChangeMemberPolicyDetails._all_fields_ = [
    ('new_value', PaperChangeMemberPolicyDetails.new_value.validator),
    ('previous_value', PaperChangeMemberPolicyDetails.previous_value.validator),
]

PaperChangeMemberPolicyType.description.validator = bv.String()
PaperChangeMemberPolicyType._all_field_names_ = set(['description'])
PaperChangeMemberPolicyType._all_fields_ = [('description', PaperChangeMemberPolicyType.description.validator)]

PaperChangePolicyDetails.new_value.validator = team_policies.PaperEnabledPolicy_validator
PaperChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.PaperEnabledPolicy_validator)
PaperChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
PaperChangePolicyDetails._all_fields_ = [
    ('new_value', PaperChangePolicyDetails.new_value.validator),
    ('previous_value', PaperChangePolicyDetails.previous_value.validator),
]

PaperChangePolicyType.description.validator = bv.String()
PaperChangePolicyType._all_field_names_ = set(['description'])
PaperChangePolicyType._all_fields_ = [('description', PaperChangePolicyType.description.validator)]

PaperContentAddMemberDetails.event_uuid.validator = bv.String()
PaperContentAddMemberDetails._all_field_names_ = set(['event_uuid'])
PaperContentAddMemberDetails._all_fields_ = [('event_uuid', PaperContentAddMemberDetails.event_uuid.validator)]

PaperContentAddMemberType.description.validator = bv.String()
PaperContentAddMemberType._all_field_names_ = set(['description'])
PaperContentAddMemberType._all_fields_ = [('description', PaperContentAddMemberType.description.validator)]

PaperContentAddToFolderDetails.event_uuid.validator = bv.String()
PaperContentAddToFolderDetails.target_asset_index.validator = bv.UInt64()
PaperContentAddToFolderDetails.parent_asset_index.validator = bv.UInt64()
PaperContentAddToFolderDetails._all_field_names_ = set([
    'event_uuid',
    'target_asset_index',
    'parent_asset_index',
])
PaperContentAddToFolderDetails._all_fields_ = [
    ('event_uuid', PaperContentAddToFolderDetails.event_uuid.validator),
    ('target_asset_index', PaperContentAddToFolderDetails.target_asset_index.validator),
    ('parent_asset_index', PaperContentAddToFolderDetails.parent_asset_index.validator),
]

PaperContentAddToFolderType.description.validator = bv.String()
PaperContentAddToFolderType._all_field_names_ = set(['description'])
PaperContentAddToFolderType._all_fields_ = [('description', PaperContentAddToFolderType.description.validator)]

PaperContentArchiveDetails.event_uuid.validator = bv.String()
PaperContentArchiveDetails._all_field_names_ = set(['event_uuid'])
PaperContentArchiveDetails._all_fields_ = [('event_uuid', PaperContentArchiveDetails.event_uuid.validator)]

PaperContentArchiveType.description.validator = bv.String()
PaperContentArchiveType._all_field_names_ = set(['description'])
PaperContentArchiveType._all_fields_ = [('description', PaperContentArchiveType.description.validator)]

PaperContentCreateDetails.event_uuid.validator = bv.String()
PaperContentCreateDetails._all_field_names_ = set(['event_uuid'])
PaperContentCreateDetails._all_fields_ = [('event_uuid', PaperContentCreateDetails.event_uuid.validator)]

PaperContentCreateType.description.validator = bv.String()
PaperContentCreateType._all_field_names_ = set(['description'])
PaperContentCreateType._all_fields_ = [('description', PaperContentCreateType.description.validator)]

PaperContentPermanentlyDeleteDetails.event_uuid.validator = bv.String()
PaperContentPermanentlyDeleteDetails._all_field_names_ = set(['event_uuid'])
PaperContentPermanentlyDeleteDetails._all_fields_ = [('event_uuid', PaperContentPermanentlyDeleteDetails.event_uuid.validator)]

PaperContentPermanentlyDeleteType.description.validator = bv.String()
PaperContentPermanentlyDeleteType._all_field_names_ = set(['description'])
PaperContentPermanentlyDeleteType._all_fields_ = [('description', PaperContentPermanentlyDeleteType.description.validator)]

PaperContentRemoveFromFolderDetails.event_uuid.validator = bv.String()
PaperContentRemoveFromFolderDetails.target_asset_index.validator = bv.Nullable(bv.UInt64())
PaperContentRemoveFromFolderDetails.parent_asset_index.validator = bv.Nullable(bv.UInt64())
PaperContentRemoveFromFolderDetails._all_field_names_ = set([
    'event_uuid',
    'target_asset_index',
    'parent_asset_index',
])
PaperContentRemoveFromFolderDetails._all_fields_ = [
    ('event_uuid', PaperContentRemoveFromFolderDetails.event_uuid.validator),
    ('target_asset_index', PaperContentRemoveFromFolderDetails.target_asset_index.validator),
    ('parent_asset_index', PaperContentRemoveFromFolderDetails.parent_asset_index.validator),
]

PaperContentRemoveFromFolderType.description.validator = bv.String()
PaperContentRemoveFromFolderType._all_field_names_ = set(['description'])
PaperContentRemoveFromFolderType._all_fields_ = [('description', PaperContentRemoveFromFolderType.description.validator)]

PaperContentRemoveMemberDetails.event_uuid.validator = bv.String()
PaperContentRemoveMemberDetails._all_field_names_ = set(['event_uuid'])
PaperContentRemoveMemberDetails._all_fields_ = [('event_uuid', PaperContentRemoveMemberDetails.event_uuid.validator)]

PaperContentRemoveMemberType.description.validator = bv.String()
PaperContentRemoveMemberType._all_field_names_ = set(['description'])
PaperContentRemoveMemberType._all_fields_ = [('description', PaperContentRemoveMemberType.description.validator)]

PaperContentRenameDetails.event_uuid.validator = bv.String()
PaperContentRenameDetails._all_field_names_ = set(['event_uuid'])
PaperContentRenameDetails._all_fields_ = [('event_uuid', PaperContentRenameDetails.event_uuid.validator)]

PaperContentRenameType.description.validator = bv.String()
PaperContentRenameType._all_field_names_ = set(['description'])
PaperContentRenameType._all_fields_ = [('description', PaperContentRenameType.description.validator)]

PaperContentRestoreDetails.event_uuid.validator = bv.String()
PaperContentRestoreDetails._all_field_names_ = set(['event_uuid'])
PaperContentRestoreDetails._all_fields_ = [('event_uuid', PaperContentRestoreDetails.event_uuid.validator)]

PaperContentRestoreType.description.validator = bv.String()
PaperContentRestoreType._all_field_names_ = set(['description'])
PaperContentRestoreType._all_fields_ = [('description', PaperContentRestoreType.description.validator)]

PaperDefaultFolderPolicy._everyone_in_team_validator = bv.Void()
PaperDefaultFolderPolicy._invite_only_validator = bv.Void()
PaperDefaultFolderPolicy._other_validator = bv.Void()
PaperDefaultFolderPolicy._tagmap = {
    'everyone_in_team': PaperDefaultFolderPolicy._everyone_in_team_validator,
    'invite_only': PaperDefaultFolderPolicy._invite_only_validator,
    'other': PaperDefaultFolderPolicy._other_validator,
}

PaperDefaultFolderPolicy.everyone_in_team = PaperDefaultFolderPolicy('everyone_in_team')
PaperDefaultFolderPolicy.invite_only = PaperDefaultFolderPolicy('invite_only')
PaperDefaultFolderPolicy.other = PaperDefaultFolderPolicy('other')

PaperDefaultFolderPolicyChangedDetails.new_value.validator = PaperDefaultFolderPolicy_validator
PaperDefaultFolderPolicyChangedDetails.previous_value.validator = PaperDefaultFolderPolicy_validator
PaperDefaultFolderPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
PaperDefaultFolderPolicyChangedDetails._all_fields_ = [
    ('new_value', PaperDefaultFolderPolicyChangedDetails.new_value.validator),
    ('previous_value', PaperDefaultFolderPolicyChangedDetails.previous_value.validator),
]

PaperDefaultFolderPolicyChangedType.description.validator = bv.String()
PaperDefaultFolderPolicyChangedType._all_field_names_ = set(['description'])
PaperDefaultFolderPolicyChangedType._all_fields_ = [('description', PaperDefaultFolderPolicyChangedType.description.validator)]

PaperDesktopPolicy._disabled_validator = bv.Void()
PaperDesktopPolicy._enabled_validator = bv.Void()
PaperDesktopPolicy._other_validator = bv.Void()
PaperDesktopPolicy._tagmap = {
    'disabled': PaperDesktopPolicy._disabled_validator,
    'enabled': PaperDesktopPolicy._enabled_validator,
    'other': PaperDesktopPolicy._other_validator,
}

PaperDesktopPolicy.disabled = PaperDesktopPolicy('disabled')
PaperDesktopPolicy.enabled = PaperDesktopPolicy('enabled')
PaperDesktopPolicy.other = PaperDesktopPolicy('other')

PaperDesktopPolicyChangedDetails.new_value.validator = PaperDesktopPolicy_validator
PaperDesktopPolicyChangedDetails.previous_value.validator = PaperDesktopPolicy_validator
PaperDesktopPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
PaperDesktopPolicyChangedDetails._all_fields_ = [
    ('new_value', PaperDesktopPolicyChangedDetails.new_value.validator),
    ('previous_value', PaperDesktopPolicyChangedDetails.previous_value.validator),
]

PaperDesktopPolicyChangedType.description.validator = bv.String()
PaperDesktopPolicyChangedType._all_field_names_ = set(['description'])
PaperDesktopPolicyChangedType._all_fields_ = [('description', PaperDesktopPolicyChangedType.description.validator)]

PaperDocAddCommentDetails.event_uuid.validator = bv.String()
PaperDocAddCommentDetails.comment_text.validator = bv.Nullable(bv.String())
PaperDocAddCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
PaperDocAddCommentDetails._all_fields_ = [
    ('event_uuid', PaperDocAddCommentDetails.event_uuid.validator),
    ('comment_text', PaperDocAddCommentDetails.comment_text.validator),
]

PaperDocAddCommentType.description.validator = bv.String()
PaperDocAddCommentType._all_field_names_ = set(['description'])
PaperDocAddCommentType._all_fields_ = [('description', PaperDocAddCommentType.description.validator)]

PaperDocChangeMemberRoleDetails.event_uuid.validator = bv.String()
PaperDocChangeMemberRoleDetails.access_type.validator = PaperAccessType_validator
PaperDocChangeMemberRoleDetails._all_field_names_ = set([
    'event_uuid',
    'access_type',
])
PaperDocChangeMemberRoleDetails._all_fields_ = [
    ('event_uuid', PaperDocChangeMemberRoleDetails.event_uuid.validator),
    ('access_type', PaperDocChangeMemberRoleDetails.access_type.validator),
]

PaperDocChangeMemberRoleType.description.validator = bv.String()
PaperDocChangeMemberRoleType._all_field_names_ = set(['description'])
PaperDocChangeMemberRoleType._all_fields_ = [('description', PaperDocChangeMemberRoleType.description.validator)]

PaperDocChangeSharingPolicyDetails.event_uuid.validator = bv.String()
PaperDocChangeSharingPolicyDetails.public_sharing_policy.validator = bv.Nullable(bv.String())
PaperDocChangeSharingPolicyDetails.team_sharing_policy.validator = bv.Nullable(bv.String())
PaperDocChangeSharingPolicyDetails._all_field_names_ = set([
    'event_uuid',
    'public_sharing_policy',
    'team_sharing_policy',
])
PaperDocChangeSharingPolicyDetails._all_fields_ = [
    ('event_uuid', PaperDocChangeSharingPolicyDetails.event_uuid.validator),
    ('public_sharing_policy', PaperDocChangeSharingPolicyDetails.public_sharing_policy.validator),
    ('team_sharing_policy', PaperDocChangeSharingPolicyDetails.team_sharing_policy.validator),
]

PaperDocChangeSharingPolicyType.description.validator = bv.String()
PaperDocChangeSharingPolicyType._all_field_names_ = set(['description'])
PaperDocChangeSharingPolicyType._all_fields_ = [('description', PaperDocChangeSharingPolicyType.description.validator)]

PaperDocChangeSubscriptionDetails.event_uuid.validator = bv.String()
PaperDocChangeSubscriptionDetails.new_subscription_level.validator = bv.String()
PaperDocChangeSubscriptionDetails.previous_subscription_level.validator = bv.Nullable(bv.String())
PaperDocChangeSubscriptionDetails._all_field_names_ = set([
    'event_uuid',
    'new_subscription_level',
    'previous_subscription_level',
])
PaperDocChangeSubscriptionDetails._all_fields_ = [
    ('event_uuid', PaperDocChangeSubscriptionDetails.event_uuid.validator),
    ('new_subscription_level', PaperDocChangeSubscriptionDetails.new_subscription_level.validator),
    ('previous_subscription_level', PaperDocChangeSubscriptionDetails.previous_subscription_level.validator),
]

PaperDocChangeSubscriptionType.description.validator = bv.String()
PaperDocChangeSubscriptionType._all_field_names_ = set(['description'])
PaperDocChangeSubscriptionType._all_fields_ = [('description', PaperDocChangeSubscriptionType.description.validator)]

PaperDocDeleteCommentDetails.event_uuid.validator = bv.String()
PaperDocDeleteCommentDetails.comment_text.validator = bv.Nullable(bv.String())
PaperDocDeleteCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
PaperDocDeleteCommentDetails._all_fields_ = [
    ('event_uuid', PaperDocDeleteCommentDetails.event_uuid.validator),
    ('comment_text', PaperDocDeleteCommentDetails.comment_text.validator),
]

PaperDocDeleteCommentType.description.validator = bv.String()
PaperDocDeleteCommentType._all_field_names_ = set(['description'])
PaperDocDeleteCommentType._all_fields_ = [('description', PaperDocDeleteCommentType.description.validator)]

PaperDocDeletedDetails.event_uuid.validator = bv.String()
PaperDocDeletedDetails._all_field_names_ = set(['event_uuid'])
PaperDocDeletedDetails._all_fields_ = [('event_uuid', PaperDocDeletedDetails.event_uuid.validator)]

PaperDocDeletedType.description.validator = bv.String()
PaperDocDeletedType._all_field_names_ = set(['description'])
PaperDocDeletedType._all_fields_ = [('description', PaperDocDeletedType.description.validator)]

PaperDocDownloadDetails.event_uuid.validator = bv.String()
PaperDocDownloadDetails.export_file_format.validator = PaperDownloadFormat_validator
PaperDocDownloadDetails._all_field_names_ = set([
    'event_uuid',
    'export_file_format',
])
PaperDocDownloadDetails._all_fields_ = [
    ('event_uuid', PaperDocDownloadDetails.event_uuid.validator),
    ('export_file_format', PaperDocDownloadDetails.export_file_format.validator),
]

PaperDocDownloadType.description.validator = bv.String()
PaperDocDownloadType._all_field_names_ = set(['description'])
PaperDocDownloadType._all_fields_ = [('description', PaperDocDownloadType.description.validator)]

PaperDocEditCommentDetails.event_uuid.validator = bv.String()
PaperDocEditCommentDetails.comment_text.validator = bv.Nullable(bv.String())
PaperDocEditCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
PaperDocEditCommentDetails._all_fields_ = [
    ('event_uuid', PaperDocEditCommentDetails.event_uuid.validator),
    ('comment_text', PaperDocEditCommentDetails.comment_text.validator),
]

PaperDocEditCommentType.description.validator = bv.String()
PaperDocEditCommentType._all_field_names_ = set(['description'])
PaperDocEditCommentType._all_fields_ = [('description', PaperDocEditCommentType.description.validator)]

PaperDocEditDetails.event_uuid.validator = bv.String()
PaperDocEditDetails._all_field_names_ = set(['event_uuid'])
PaperDocEditDetails._all_fields_ = [('event_uuid', PaperDocEditDetails.event_uuid.validator)]

PaperDocEditType.description.validator = bv.String()
PaperDocEditType._all_field_names_ = set(['description'])
PaperDocEditType._all_fields_ = [('description', PaperDocEditType.description.validator)]

PaperDocFollowedDetails.event_uuid.validator = bv.String()
PaperDocFollowedDetails._all_field_names_ = set(['event_uuid'])
PaperDocFollowedDetails._all_fields_ = [('event_uuid', PaperDocFollowedDetails.event_uuid.validator)]

PaperDocFollowedType.description.validator = bv.String()
PaperDocFollowedType._all_field_names_ = set(['description'])
PaperDocFollowedType._all_fields_ = [('description', PaperDocFollowedType.description.validator)]

PaperDocMentionDetails.event_uuid.validator = bv.String()
PaperDocMentionDetails._all_field_names_ = set(['event_uuid'])
PaperDocMentionDetails._all_fields_ = [('event_uuid', PaperDocMentionDetails.event_uuid.validator)]

PaperDocMentionType.description.validator = bv.String()
PaperDocMentionType._all_field_names_ = set(['description'])
PaperDocMentionType._all_fields_ = [('description', PaperDocMentionType.description.validator)]

PaperDocOwnershipChangedDetails.event_uuid.validator = bv.String()
PaperDocOwnershipChangedDetails.old_owner_user_id.validator = bv.Nullable(users_common.AccountId_validator)
PaperDocOwnershipChangedDetails.new_owner_user_id.validator = users_common.AccountId_validator
PaperDocOwnershipChangedDetails._all_field_names_ = set([
    'event_uuid',
    'old_owner_user_id',
    'new_owner_user_id',
])
PaperDocOwnershipChangedDetails._all_fields_ = [
    ('event_uuid', PaperDocOwnershipChangedDetails.event_uuid.validator),
    ('old_owner_user_id', PaperDocOwnershipChangedDetails.old_owner_user_id.validator),
    ('new_owner_user_id', PaperDocOwnershipChangedDetails.new_owner_user_id.validator),
]

PaperDocOwnershipChangedType.description.validator = bv.String()
PaperDocOwnershipChangedType._all_field_names_ = set(['description'])
PaperDocOwnershipChangedType._all_fields_ = [('description', PaperDocOwnershipChangedType.description.validator)]

PaperDocRequestAccessDetails.event_uuid.validator = bv.String()
PaperDocRequestAccessDetails._all_field_names_ = set(['event_uuid'])
PaperDocRequestAccessDetails._all_fields_ = [('event_uuid', PaperDocRequestAccessDetails.event_uuid.validator)]

PaperDocRequestAccessType.description.validator = bv.String()
PaperDocRequestAccessType._all_field_names_ = set(['description'])
PaperDocRequestAccessType._all_fields_ = [('description', PaperDocRequestAccessType.description.validator)]

PaperDocResolveCommentDetails.event_uuid.validator = bv.String()
PaperDocResolveCommentDetails.comment_text.validator = bv.Nullable(bv.String())
PaperDocResolveCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
PaperDocResolveCommentDetails._all_fields_ = [
    ('event_uuid', PaperDocResolveCommentDetails.event_uuid.validator),
    ('comment_text', PaperDocResolveCommentDetails.comment_text.validator),
]

PaperDocResolveCommentType.description.validator = bv.String()
PaperDocResolveCommentType._all_field_names_ = set(['description'])
PaperDocResolveCommentType._all_fields_ = [('description', PaperDocResolveCommentType.description.validator)]

PaperDocRevertDetails.event_uuid.validator = bv.String()
PaperDocRevertDetails._all_field_names_ = set(['event_uuid'])
PaperDocRevertDetails._all_fields_ = [('event_uuid', PaperDocRevertDetails.event_uuid.validator)]

PaperDocRevertType.description.validator = bv.String()
PaperDocRevertType._all_field_names_ = set(['description'])
PaperDocRevertType._all_fields_ = [('description', PaperDocRevertType.description.validator)]

PaperDocSlackShareDetails.event_uuid.validator = bv.String()
PaperDocSlackShareDetails._all_field_names_ = set(['event_uuid'])
PaperDocSlackShareDetails._all_fields_ = [('event_uuid', PaperDocSlackShareDetails.event_uuid.validator)]

PaperDocSlackShareType.description.validator = bv.String()
PaperDocSlackShareType._all_field_names_ = set(['description'])
PaperDocSlackShareType._all_fields_ = [('description', PaperDocSlackShareType.description.validator)]

PaperDocTeamInviteDetails.event_uuid.validator = bv.String()
PaperDocTeamInviteDetails._all_field_names_ = set(['event_uuid'])
PaperDocTeamInviteDetails._all_fields_ = [('event_uuid', PaperDocTeamInviteDetails.event_uuid.validator)]

PaperDocTeamInviteType.description.validator = bv.String()
PaperDocTeamInviteType._all_field_names_ = set(['description'])
PaperDocTeamInviteType._all_fields_ = [('description', PaperDocTeamInviteType.description.validator)]

PaperDocTrashedDetails.event_uuid.validator = bv.String()
PaperDocTrashedDetails._all_field_names_ = set(['event_uuid'])
PaperDocTrashedDetails._all_fields_ = [('event_uuid', PaperDocTrashedDetails.event_uuid.validator)]

PaperDocTrashedType.description.validator = bv.String()
PaperDocTrashedType._all_field_names_ = set(['description'])
PaperDocTrashedType._all_fields_ = [('description', PaperDocTrashedType.description.validator)]

PaperDocUnresolveCommentDetails.event_uuid.validator = bv.String()
PaperDocUnresolveCommentDetails.comment_text.validator = bv.Nullable(bv.String())
PaperDocUnresolveCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
PaperDocUnresolveCommentDetails._all_fields_ = [
    ('event_uuid', PaperDocUnresolveCommentDetails.event_uuid.validator),
    ('comment_text', PaperDocUnresolveCommentDetails.comment_text.validator),
]

PaperDocUnresolveCommentType.description.validator = bv.String()
PaperDocUnresolveCommentType._all_field_names_ = set(['description'])
PaperDocUnresolveCommentType._all_fields_ = [('description', PaperDocUnresolveCommentType.description.validator)]

PaperDocUntrashedDetails.event_uuid.validator = bv.String()
PaperDocUntrashedDetails._all_field_names_ = set(['event_uuid'])
PaperDocUntrashedDetails._all_fields_ = [('event_uuid', PaperDocUntrashedDetails.event_uuid.validator)]

PaperDocUntrashedType.description.validator = bv.String()
PaperDocUntrashedType._all_field_names_ = set(['description'])
PaperDocUntrashedType._all_fields_ = [('description', PaperDocUntrashedType.description.validator)]

PaperDocViewDetails.event_uuid.validator = bv.String()
PaperDocViewDetails._all_field_names_ = set(['event_uuid'])
PaperDocViewDetails._all_fields_ = [('event_uuid', PaperDocViewDetails.event_uuid.validator)]

PaperDocViewType.description.validator = bv.String()
PaperDocViewType._all_field_names_ = set(['description'])
PaperDocViewType._all_fields_ = [('description', PaperDocViewType.description.validator)]

PaperDocumentLogInfo.doc_id.validator = bv.String()
PaperDocumentLogInfo.doc_title.validator = bv.String()
PaperDocumentLogInfo._all_field_names_ = set([
    'doc_id',
    'doc_title',
])
PaperDocumentLogInfo._all_fields_ = [
    ('doc_id', PaperDocumentLogInfo.doc_id.validator),
    ('doc_title', PaperDocumentLogInfo.doc_title.validator),
]

PaperDownloadFormat._docx_validator = bv.Void()
PaperDownloadFormat._html_validator = bv.Void()
PaperDownloadFormat._markdown_validator = bv.Void()
PaperDownloadFormat._pdf_validator = bv.Void()
PaperDownloadFormat._other_validator = bv.Void()
PaperDownloadFormat._tagmap = {
    'docx': PaperDownloadFormat._docx_validator,
    'html': PaperDownloadFormat._html_validator,
    'markdown': PaperDownloadFormat._markdown_validator,
    'pdf': PaperDownloadFormat._pdf_validator,
    'other': PaperDownloadFormat._other_validator,
}

PaperDownloadFormat.docx = PaperDownloadFormat('docx')
PaperDownloadFormat.html = PaperDownloadFormat('html')
PaperDownloadFormat.markdown = PaperDownloadFormat('markdown')
PaperDownloadFormat.pdf = PaperDownloadFormat('pdf')
PaperDownloadFormat.other = PaperDownloadFormat('other')

PaperEnabledUsersGroupAdditionDetails._all_field_names_ = set([])
PaperEnabledUsersGroupAdditionDetails._all_fields_ = []

PaperEnabledUsersGroupAdditionType.description.validator = bv.String()
PaperEnabledUsersGroupAdditionType._all_field_names_ = set(['description'])
PaperEnabledUsersGroupAdditionType._all_fields_ = [('description', PaperEnabledUsersGroupAdditionType.description.validator)]

PaperEnabledUsersGroupRemovalDetails._all_field_names_ = set([])
PaperEnabledUsersGroupRemovalDetails._all_fields_ = []

PaperEnabledUsersGroupRemovalType.description.validator = bv.String()
PaperEnabledUsersGroupRemovalType._all_field_names_ = set(['description'])
PaperEnabledUsersGroupRemovalType._all_fields_ = [('description', PaperEnabledUsersGroupRemovalType.description.validator)]

PaperExternalViewAllowDetails.event_uuid.validator = bv.String()
PaperExternalViewAllowDetails._all_field_names_ = set(['event_uuid'])
PaperExternalViewAllowDetails._all_fields_ = [('event_uuid', PaperExternalViewAllowDetails.event_uuid.validator)]

PaperExternalViewAllowType.description.validator = bv.String()
PaperExternalViewAllowType._all_field_names_ = set(['description'])
PaperExternalViewAllowType._all_fields_ = [('description', PaperExternalViewAllowType.description.validator)]

PaperExternalViewDefaultTeamDetails.event_uuid.validator = bv.String()
PaperExternalViewDefaultTeamDetails._all_field_names_ = set(['event_uuid'])
PaperExternalViewDefaultTeamDetails._all_fields_ = [('event_uuid', PaperExternalViewDefaultTeamDetails.event_uuid.validator)]

PaperExternalViewDefaultTeamType.description.validator = bv.String()
PaperExternalViewDefaultTeamType._all_field_names_ = set(['description'])
PaperExternalViewDefaultTeamType._all_fields_ = [('description', PaperExternalViewDefaultTeamType.description.validator)]

PaperExternalViewForbidDetails.event_uuid.validator = bv.String()
PaperExternalViewForbidDetails._all_field_names_ = set(['event_uuid'])
PaperExternalViewForbidDetails._all_fields_ = [('event_uuid', PaperExternalViewForbidDetails.event_uuid.validator)]

PaperExternalViewForbidType.description.validator = bv.String()
PaperExternalViewForbidType._all_field_names_ = set(['description'])
PaperExternalViewForbidType._all_fields_ = [('description', PaperExternalViewForbidType.description.validator)]

PaperFolderChangeSubscriptionDetails.event_uuid.validator = bv.String()
PaperFolderChangeSubscriptionDetails.new_subscription_level.validator = bv.String()
PaperFolderChangeSubscriptionDetails.previous_subscription_level.validator = bv.Nullable(bv.String())
PaperFolderChangeSubscriptionDetails._all_field_names_ = set([
    'event_uuid',
    'new_subscription_level',
    'previous_subscription_level',
])
PaperFolderChangeSubscriptionDetails._all_fields_ = [
    ('event_uuid', PaperFolderChangeSubscriptionDetails.event_uuid.validator),
    ('new_subscription_level', PaperFolderChangeSubscriptionDetails.new_subscription_level.validator),
    ('previous_subscription_level', PaperFolderChangeSubscriptionDetails.previous_subscription_level.validator),
]

PaperFolderChangeSubscriptionType.description.validator = bv.String()
PaperFolderChangeSubscriptionType._all_field_names_ = set(['description'])
PaperFolderChangeSubscriptionType._all_fields_ = [('description', PaperFolderChangeSubscriptionType.description.validator)]

PaperFolderDeletedDetails.event_uuid.validator = bv.String()
PaperFolderDeletedDetails._all_field_names_ = set(['event_uuid'])
PaperFolderDeletedDetails._all_fields_ = [('event_uuid', PaperFolderDeletedDetails.event_uuid.validator)]

PaperFolderDeletedType.description.validator = bv.String()
PaperFolderDeletedType._all_field_names_ = set(['description'])
PaperFolderDeletedType._all_fields_ = [('description', PaperFolderDeletedType.description.validator)]

PaperFolderFollowedDetails.event_uuid.validator = bv.String()
PaperFolderFollowedDetails._all_field_names_ = set(['event_uuid'])
PaperFolderFollowedDetails._all_fields_ = [('event_uuid', PaperFolderFollowedDetails.event_uuid.validator)]

PaperFolderFollowedType.description.validator = bv.String()
PaperFolderFollowedType._all_field_names_ = set(['description'])
PaperFolderFollowedType._all_fields_ = [('description', PaperFolderFollowedType.description.validator)]

PaperFolderLogInfo.folder_id.validator = bv.String()
PaperFolderLogInfo.folder_name.validator = bv.String()
PaperFolderLogInfo._all_field_names_ = set([
    'folder_id',
    'folder_name',
])
PaperFolderLogInfo._all_fields_ = [
    ('folder_id', PaperFolderLogInfo.folder_id.validator),
    ('folder_name', PaperFolderLogInfo.folder_name.validator),
]

PaperFolderTeamInviteDetails.event_uuid.validator = bv.String()
PaperFolderTeamInviteDetails._all_field_names_ = set(['event_uuid'])
PaperFolderTeamInviteDetails._all_fields_ = [('event_uuid', PaperFolderTeamInviteDetails.event_uuid.validator)]

PaperFolderTeamInviteType.description.validator = bv.String()
PaperFolderTeamInviteType._all_field_names_ = set(['description'])
PaperFolderTeamInviteType._all_fields_ = [('description', PaperFolderTeamInviteType.description.validator)]

PaperMemberPolicy._anyone_with_link_validator = bv.Void()
PaperMemberPolicy._only_team_validator = bv.Void()
PaperMemberPolicy._team_and_explicitly_shared_validator = bv.Void()
PaperMemberPolicy._other_validator = bv.Void()
PaperMemberPolicy._tagmap = {
    'anyone_with_link': PaperMemberPolicy._anyone_with_link_validator,
    'only_team': PaperMemberPolicy._only_team_validator,
    'team_and_explicitly_shared': PaperMemberPolicy._team_and_explicitly_shared_validator,
    'other': PaperMemberPolicy._other_validator,
}

PaperMemberPolicy.anyone_with_link = PaperMemberPolicy('anyone_with_link')
PaperMemberPolicy.only_team = PaperMemberPolicy('only_team')
PaperMemberPolicy.team_and_explicitly_shared = PaperMemberPolicy('team_and_explicitly_shared')
PaperMemberPolicy.other = PaperMemberPolicy('other')

PaperPublishedLinkChangePermissionDetails.event_uuid.validator = bv.String()
PaperPublishedLinkChangePermissionDetails.new_permission_level.validator = bv.String()
PaperPublishedLinkChangePermissionDetails.previous_permission_level.validator = bv.String()
PaperPublishedLinkChangePermissionDetails._all_field_names_ = set([
    'event_uuid',
    'new_permission_level',
    'previous_permission_level',
])
PaperPublishedLinkChangePermissionDetails._all_fields_ = [
    ('event_uuid', PaperPublishedLinkChangePermissionDetails.event_uuid.validator),
    ('new_permission_level', PaperPublishedLinkChangePermissionDetails.new_permission_level.validator),
    ('previous_permission_level', PaperPublishedLinkChangePermissionDetails.previous_permission_level.validator),
]

PaperPublishedLinkChangePermissionType.description.validator = bv.String()
PaperPublishedLinkChangePermissionType._all_field_names_ = set(['description'])
PaperPublishedLinkChangePermissionType._all_fields_ = [('description', PaperPublishedLinkChangePermissionType.description.validator)]

PaperPublishedLinkCreateDetails.event_uuid.validator = bv.String()
PaperPublishedLinkCreateDetails._all_field_names_ = set(['event_uuid'])
PaperPublishedLinkCreateDetails._all_fields_ = [('event_uuid', PaperPublishedLinkCreateDetails.event_uuid.validator)]

PaperPublishedLinkCreateType.description.validator = bv.String()
PaperPublishedLinkCreateType._all_field_names_ = set(['description'])
PaperPublishedLinkCreateType._all_fields_ = [('description', PaperPublishedLinkCreateType.description.validator)]

PaperPublishedLinkDisabledDetails.event_uuid.validator = bv.String()
PaperPublishedLinkDisabledDetails._all_field_names_ = set(['event_uuid'])
PaperPublishedLinkDisabledDetails._all_fields_ = [('event_uuid', PaperPublishedLinkDisabledDetails.event_uuid.validator)]

PaperPublishedLinkDisabledType.description.validator = bv.String()
PaperPublishedLinkDisabledType._all_field_names_ = set(['description'])
PaperPublishedLinkDisabledType._all_fields_ = [('description', PaperPublishedLinkDisabledType.description.validator)]

PaperPublishedLinkViewDetails.event_uuid.validator = bv.String()
PaperPublishedLinkViewDetails._all_field_names_ = set(['event_uuid'])
PaperPublishedLinkViewDetails._all_fields_ = [('event_uuid', PaperPublishedLinkViewDetails.event_uuid.validator)]

PaperPublishedLinkViewType.description.validator = bv.String()
PaperPublishedLinkViewType._all_field_names_ = set(['description'])
PaperPublishedLinkViewType._all_fields_ = [('description', PaperPublishedLinkViewType.description.validator)]

ParticipantLogInfo._group_validator = GroupLogInfo_validator
ParticipantLogInfo._user_validator = UserLogInfo_validator
ParticipantLogInfo._other_validator = bv.Void()
ParticipantLogInfo._tagmap = {
    'group': ParticipantLogInfo._group_validator,
    'user': ParticipantLogInfo._user_validator,
    'other': ParticipantLogInfo._other_validator,
}

ParticipantLogInfo.other = ParticipantLogInfo('other')

PassPolicy._allow_validator = bv.Void()
PassPolicy._disabled_validator = bv.Void()
PassPolicy._enabled_validator = bv.Void()
PassPolicy._other_validator = bv.Void()
PassPolicy._tagmap = {
    'allow': PassPolicy._allow_validator,
    'disabled': PassPolicy._disabled_validator,
    'enabled': PassPolicy._enabled_validator,
    'other': PassPolicy._other_validator,
}

PassPolicy.allow = PassPolicy('allow')
PassPolicy.disabled = PassPolicy('disabled')
PassPolicy.enabled = PassPolicy('enabled')
PassPolicy.other = PassPolicy('other')

PasswordChangeDetails._all_field_names_ = set([])
PasswordChangeDetails._all_fields_ = []

PasswordChangeType.description.validator = bv.String()
PasswordChangeType._all_field_names_ = set(['description'])
PasswordChangeType._all_fields_ = [('description', PasswordChangeType.description.validator)]

PasswordResetAllDetails._all_field_names_ = set([])
PasswordResetAllDetails._all_fields_ = []

PasswordResetAllType.description.validator = bv.String()
PasswordResetAllType._all_field_names_ = set(['description'])
PasswordResetAllType._all_fields_ = [('description', PasswordResetAllType.description.validator)]

PasswordResetDetails._all_field_names_ = set([])
PasswordResetDetails._all_fields_ = []

PasswordResetType.description.validator = bv.String()
PasswordResetType._all_field_names_ = set(['description'])
PasswordResetType._all_fields_ = [('description', PasswordResetType.description.validator)]

PasswordStrengthRequirementsChangePolicyDetails.previous_value.validator = team_policies.PasswordStrengthPolicy_validator
PasswordStrengthRequirementsChangePolicyDetails.new_value.validator = team_policies.PasswordStrengthPolicy_validator
PasswordStrengthRequirementsChangePolicyDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
PasswordStrengthRequirementsChangePolicyDetails._all_fields_ = [
    ('previous_value', PasswordStrengthRequirementsChangePolicyDetails.previous_value.validator),
    ('new_value', PasswordStrengthRequirementsChangePolicyDetails.new_value.validator),
]

PasswordStrengthRequirementsChangePolicyType.description.validator = bv.String()
PasswordStrengthRequirementsChangePolicyType._all_field_names_ = set(['description'])
PasswordStrengthRequirementsChangePolicyType._all_fields_ = [('description', PasswordStrengthRequirementsChangePolicyType.description.validator)]

PathLogInfo.contextual.validator = bv.Nullable(FilePath_validator)
PathLogInfo.namespace_relative.validator = NamespaceRelativePathLogInfo_validator
PathLogInfo._all_field_names_ = set([
    'contextual',
    'namespace_relative',
])
PathLogInfo._all_fields_ = [
    ('contextual', PathLogInfo.contextual.validator),
    ('namespace_relative', PathLogInfo.namespace_relative.validator),
]

PendingSecondaryEmailAddedDetails.secondary_email.validator = EmailAddress_validator
PendingSecondaryEmailAddedDetails._all_field_names_ = set(['secondary_email'])
PendingSecondaryEmailAddedDetails._all_fields_ = [('secondary_email', PendingSecondaryEmailAddedDetails.secondary_email.validator)]

PendingSecondaryEmailAddedType.description.validator = bv.String()
PendingSecondaryEmailAddedType._all_field_names_ = set(['description'])
PendingSecondaryEmailAddedType._all_fields_ = [('description', PendingSecondaryEmailAddedType.description.validator)]

PermanentDeleteChangePolicyDetails.new_value.validator = ContentPermanentDeletePolicy_validator
PermanentDeleteChangePolicyDetails.previous_value.validator = bv.Nullable(ContentPermanentDeletePolicy_validator)
PermanentDeleteChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
PermanentDeleteChangePolicyDetails._all_fields_ = [
    ('new_value', PermanentDeleteChangePolicyDetails.new_value.validator),
    ('previous_value', PermanentDeleteChangePolicyDetails.previous_value.validator),
]

PermanentDeleteChangePolicyType.description.validator = bv.String()
PermanentDeleteChangePolicyType._all_field_names_ = set(['description'])
PermanentDeleteChangePolicyType._all_fields_ = [('description', PermanentDeleteChangePolicyType.description.validator)]

PlacementRestriction._australia_only_validator = bv.Void()
PlacementRestriction._europe_only_validator = bv.Void()
PlacementRestriction._japan_only_validator = bv.Void()
PlacementRestriction._none_validator = bv.Void()
PlacementRestriction._uk_only_validator = bv.Void()
PlacementRestriction._us_s3_only_validator = bv.Void()
PlacementRestriction._other_validator = bv.Void()
PlacementRestriction._tagmap = {
    'australia_only': PlacementRestriction._australia_only_validator,
    'europe_only': PlacementRestriction._europe_only_validator,
    'japan_only': PlacementRestriction._japan_only_validator,
    'none': PlacementRestriction._none_validator,
    'uk_only': PlacementRestriction._uk_only_validator,
    'us_s3_only': PlacementRestriction._us_s3_only_validator,
    'other': PlacementRestriction._other_validator,
}

PlacementRestriction.australia_only = PlacementRestriction('australia_only')
PlacementRestriction.europe_only = PlacementRestriction('europe_only')
PlacementRestriction.japan_only = PlacementRestriction('japan_only')
PlacementRestriction.none = PlacementRestriction('none')
PlacementRestriction.uk_only = PlacementRestriction('uk_only')
PlacementRestriction.us_s3_only = PlacementRestriction('us_s3_only')
PlacementRestriction.other = PlacementRestriction('other')

PolicyType._disposition_validator = bv.Void()
PolicyType._retention_validator = bv.Void()
PolicyType._other_validator = bv.Void()
PolicyType._tagmap = {
    'disposition': PolicyType._disposition_validator,
    'retention': PolicyType._retention_validator,
    'other': PolicyType._other_validator,
}

PolicyType.disposition = PolicyType('disposition')
PolicyType.retention = PolicyType('retention')
PolicyType.other = PolicyType('other')

PrimaryTeamRequestAcceptedDetails.secondary_team.validator = bv.String()
PrimaryTeamRequestAcceptedDetails.sent_by.validator = bv.String()
PrimaryTeamRequestAcceptedDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
PrimaryTeamRequestAcceptedDetails._all_fields_ = [
    ('secondary_team', PrimaryTeamRequestAcceptedDetails.secondary_team.validator),
    ('sent_by', PrimaryTeamRequestAcceptedDetails.sent_by.validator),
]

PrimaryTeamRequestCanceledDetails.secondary_team.validator = bv.String()
PrimaryTeamRequestCanceledDetails.sent_by.validator = bv.String()
PrimaryTeamRequestCanceledDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
PrimaryTeamRequestCanceledDetails._all_fields_ = [
    ('secondary_team', PrimaryTeamRequestCanceledDetails.secondary_team.validator),
    ('sent_by', PrimaryTeamRequestCanceledDetails.sent_by.validator),
]

PrimaryTeamRequestExpiredDetails.secondary_team.validator = bv.String()
PrimaryTeamRequestExpiredDetails.sent_by.validator = bv.String()
PrimaryTeamRequestExpiredDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
PrimaryTeamRequestExpiredDetails._all_fields_ = [
    ('secondary_team', PrimaryTeamRequestExpiredDetails.secondary_team.validator),
    ('sent_by', PrimaryTeamRequestExpiredDetails.sent_by.validator),
]

PrimaryTeamRequestReminderDetails.secondary_team.validator = bv.String()
PrimaryTeamRequestReminderDetails.sent_to.validator = bv.String()
PrimaryTeamRequestReminderDetails._all_field_names_ = set([
    'secondary_team',
    'sent_to',
])
PrimaryTeamRequestReminderDetails._all_fields_ = [
    ('secondary_team', PrimaryTeamRequestReminderDetails.secondary_team.validator),
    ('sent_to', PrimaryTeamRequestReminderDetails.sent_to.validator),
]

QuickActionType._delete_shared_link_validator = bv.Void()
QuickActionType._reset_password_validator = bv.Void()
QuickActionType._restore_file_or_folder_validator = bv.Void()
QuickActionType._unlink_app_validator = bv.Void()
QuickActionType._unlink_device_validator = bv.Void()
QuickActionType._unlink_session_validator = bv.Void()
QuickActionType._other_validator = bv.Void()
QuickActionType._tagmap = {
    'delete_shared_link': QuickActionType._delete_shared_link_validator,
    'reset_password': QuickActionType._reset_password_validator,
    'restore_file_or_folder': QuickActionType._restore_file_or_folder_validator,
    'unlink_app': QuickActionType._unlink_app_validator,
    'unlink_device': QuickActionType._unlink_device_validator,
    'unlink_session': QuickActionType._unlink_session_validator,
    'other': QuickActionType._other_validator,
}

QuickActionType.delete_shared_link = QuickActionType('delete_shared_link')
QuickActionType.reset_password = QuickActionType('reset_password')
QuickActionType.restore_file_or_folder = QuickActionType('restore_file_or_folder')
QuickActionType.unlink_app = QuickActionType('unlink_app')
QuickActionType.unlink_device = QuickActionType('unlink_device')
QuickActionType.unlink_session = QuickActionType('unlink_session')
QuickActionType.other = QuickActionType('other')

RecipientsConfiguration.recipient_setting_type.validator = bv.Nullable(AlertRecipientsSettingType_validator)
RecipientsConfiguration.emails.validator = bv.Nullable(bv.List(EmailAddress_validator))
RecipientsConfiguration.groups.validator = bv.Nullable(bv.List(bv.String()))
RecipientsConfiguration._all_field_names_ = set([
    'recipient_setting_type',
    'emails',
    'groups',
])
RecipientsConfiguration._all_fields_ = [
    ('recipient_setting_type', RecipientsConfiguration.recipient_setting_type.validator),
    ('emails', RecipientsConfiguration.emails.validator),
    ('groups', RecipientsConfiguration.groups.validator),
]

RelocateAssetReferencesLogInfo.src_asset_index.validator = bv.UInt64()
RelocateAssetReferencesLogInfo.dest_asset_index.validator = bv.UInt64()
RelocateAssetReferencesLogInfo._all_field_names_ = set([
    'src_asset_index',
    'dest_asset_index',
])
RelocateAssetReferencesLogInfo._all_fields_ = [
    ('src_asset_index', RelocateAssetReferencesLogInfo.src_asset_index.validator),
    ('dest_asset_index', RelocateAssetReferencesLogInfo.dest_asset_index.validator),
]

ResellerLogInfo.reseller_name.validator = bv.String()
ResellerLogInfo.reseller_email.validator = EmailAddress_validator
ResellerLogInfo._all_field_names_ = set([
    'reseller_name',
    'reseller_email',
])
ResellerLogInfo._all_fields_ = [
    ('reseller_name', ResellerLogInfo.reseller_name.validator),
    ('reseller_email', ResellerLogInfo.reseller_email.validator),
]

ResellerRole._not_reseller_validator = bv.Void()
ResellerRole._reseller_admin_validator = bv.Void()
ResellerRole._other_validator = bv.Void()
ResellerRole._tagmap = {
    'not_reseller': ResellerRole._not_reseller_validator,
    'reseller_admin': ResellerRole._reseller_admin_validator,
    'other': ResellerRole._other_validator,
}

ResellerRole.not_reseller = ResellerRole('not_reseller')
ResellerRole.reseller_admin = ResellerRole('reseller_admin')
ResellerRole.other = ResellerRole('other')

ResellerSupportChangePolicyDetails.new_value.validator = ResellerSupportPolicy_validator
ResellerSupportChangePolicyDetails.previous_value.validator = ResellerSupportPolicy_validator
ResellerSupportChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ResellerSupportChangePolicyDetails._all_fields_ = [
    ('new_value', ResellerSupportChangePolicyDetails.new_value.validator),
    ('previous_value', ResellerSupportChangePolicyDetails.previous_value.validator),
]

ResellerSupportChangePolicyType.description.validator = bv.String()
ResellerSupportChangePolicyType._all_field_names_ = set(['description'])
ResellerSupportChangePolicyType._all_fields_ = [('description', ResellerSupportChangePolicyType.description.validator)]

ResellerSupportPolicy._disabled_validator = bv.Void()
ResellerSupportPolicy._enabled_validator = bv.Void()
ResellerSupportPolicy._other_validator = bv.Void()
ResellerSupportPolicy._tagmap = {
    'disabled': ResellerSupportPolicy._disabled_validator,
    'enabled': ResellerSupportPolicy._enabled_validator,
    'other': ResellerSupportPolicy._other_validator,
}

ResellerSupportPolicy.disabled = ResellerSupportPolicy('disabled')
ResellerSupportPolicy.enabled = ResellerSupportPolicy('enabled')
ResellerSupportPolicy.other = ResellerSupportPolicy('other')

ResellerSupportSessionEndDetails._all_field_names_ = set([])
ResellerSupportSessionEndDetails._all_fields_ = []

ResellerSupportSessionEndType.description.validator = bv.String()
ResellerSupportSessionEndType._all_field_names_ = set(['description'])
ResellerSupportSessionEndType._all_fields_ = [('description', ResellerSupportSessionEndType.description.validator)]

ResellerSupportSessionStartDetails._all_field_names_ = set([])
ResellerSupportSessionStartDetails._all_fields_ = []

ResellerSupportSessionStartType.description.validator = bv.String()
ResellerSupportSessionStartType._all_field_names_ = set(['description'])
ResellerSupportSessionStartType._all_fields_ = [('description', ResellerSupportSessionStartType.description.validator)]

RewindFolderDetails.rewind_folder_target_ts_ms.validator = common.DropboxTimestamp_validator
RewindFolderDetails._all_field_names_ = set(['rewind_folder_target_ts_ms'])
RewindFolderDetails._all_fields_ = [('rewind_folder_target_ts_ms', RewindFolderDetails.rewind_folder_target_ts_ms.validator)]

RewindFolderType.description.validator = bv.String()
RewindFolderType._all_field_names_ = set(['description'])
RewindFolderType._all_fields_ = [('description', RewindFolderType.description.validator)]

RewindPolicy._admins_only_validator = bv.Void()
RewindPolicy._everyone_validator = bv.Void()
RewindPolicy._other_validator = bv.Void()
RewindPolicy._tagmap = {
    'admins_only': RewindPolicy._admins_only_validator,
    'everyone': RewindPolicy._everyone_validator,
    'other': RewindPolicy._other_validator,
}

RewindPolicy.admins_only = RewindPolicy('admins_only')
RewindPolicy.everyone = RewindPolicy('everyone')
RewindPolicy.other = RewindPolicy('other')

RewindPolicyChangedDetails.new_value.validator = RewindPolicy_validator
RewindPolicyChangedDetails.previous_value.validator = RewindPolicy_validator
RewindPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
RewindPolicyChangedDetails._all_fields_ = [
    ('new_value', RewindPolicyChangedDetails.new_value.validator),
    ('previous_value', RewindPolicyChangedDetails.previous_value.validator),
]

RewindPolicyChangedType.description.validator = bv.String()
RewindPolicyChangedType._all_field_names_ = set(['description'])
RewindPolicyChangedType._all_fields_ = [('description', RewindPolicyChangedType.description.validator)]

SecondaryEmailDeletedDetails.secondary_email.validator = EmailAddress_validator
SecondaryEmailDeletedDetails._all_field_names_ = set(['secondary_email'])
SecondaryEmailDeletedDetails._all_fields_ = [('secondary_email', SecondaryEmailDeletedDetails.secondary_email.validator)]

SecondaryEmailDeletedType.description.validator = bv.String()
SecondaryEmailDeletedType._all_field_names_ = set(['description'])
SecondaryEmailDeletedType._all_fields_ = [('description', SecondaryEmailDeletedType.description.validator)]

SecondaryEmailVerifiedDetails.secondary_email.validator = EmailAddress_validator
SecondaryEmailVerifiedDetails._all_field_names_ = set(['secondary_email'])
SecondaryEmailVerifiedDetails._all_fields_ = [('secondary_email', SecondaryEmailVerifiedDetails.secondary_email.validator)]

SecondaryEmailVerifiedType.description.validator = bv.String()
SecondaryEmailVerifiedType._all_field_names_ = set(['description'])
SecondaryEmailVerifiedType._all_fields_ = [('description', SecondaryEmailVerifiedType.description.validator)]

SecondaryMailsPolicy._disabled_validator = bv.Void()
SecondaryMailsPolicy._enabled_validator = bv.Void()
SecondaryMailsPolicy._other_validator = bv.Void()
SecondaryMailsPolicy._tagmap = {
    'disabled': SecondaryMailsPolicy._disabled_validator,
    'enabled': SecondaryMailsPolicy._enabled_validator,
    'other': SecondaryMailsPolicy._other_validator,
}

SecondaryMailsPolicy.disabled = SecondaryMailsPolicy('disabled')
SecondaryMailsPolicy.enabled = SecondaryMailsPolicy('enabled')
SecondaryMailsPolicy.other = SecondaryMailsPolicy('other')

SecondaryMailsPolicyChangedDetails.previous_value.validator = SecondaryMailsPolicy_validator
SecondaryMailsPolicyChangedDetails.new_value.validator = SecondaryMailsPolicy_validator
SecondaryMailsPolicyChangedDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SecondaryMailsPolicyChangedDetails._all_fields_ = [
    ('previous_value', SecondaryMailsPolicyChangedDetails.previous_value.validator),
    ('new_value', SecondaryMailsPolicyChangedDetails.new_value.validator),
]

SecondaryMailsPolicyChangedType.description.validator = bv.String()
SecondaryMailsPolicyChangedType._all_field_names_ = set(['description'])
SecondaryMailsPolicyChangedType._all_fields_ = [('description', SecondaryMailsPolicyChangedType.description.validator)]

SecondaryTeamRequestAcceptedDetails.primary_team.validator = bv.String()
SecondaryTeamRequestAcceptedDetails.sent_by.validator = bv.String()
SecondaryTeamRequestAcceptedDetails._all_field_names_ = set([
    'primary_team',
    'sent_by',
])
SecondaryTeamRequestAcceptedDetails._all_fields_ = [
    ('primary_team', SecondaryTeamRequestAcceptedDetails.primary_team.validator),
    ('sent_by', SecondaryTeamRequestAcceptedDetails.sent_by.validator),
]

SecondaryTeamRequestCanceledDetails.sent_to.validator = bv.String()
SecondaryTeamRequestCanceledDetails.sent_by.validator = bv.String()
SecondaryTeamRequestCanceledDetails._all_field_names_ = set([
    'sent_to',
    'sent_by',
])
SecondaryTeamRequestCanceledDetails._all_fields_ = [
    ('sent_to', SecondaryTeamRequestCanceledDetails.sent_to.validator),
    ('sent_by', SecondaryTeamRequestCanceledDetails.sent_by.validator),
]

SecondaryTeamRequestExpiredDetails.sent_to.validator = bv.String()
SecondaryTeamRequestExpiredDetails._all_field_names_ = set(['sent_to'])
SecondaryTeamRequestExpiredDetails._all_fields_ = [('sent_to', SecondaryTeamRequestExpiredDetails.sent_to.validator)]

SecondaryTeamRequestReminderDetails.sent_to.validator = bv.String()
SecondaryTeamRequestReminderDetails._all_field_names_ = set(['sent_to'])
SecondaryTeamRequestReminderDetails._all_fields_ = [('sent_to', SecondaryTeamRequestReminderDetails.sent_to.validator)]

SendForSignaturePolicy._disabled_validator = bv.Void()
SendForSignaturePolicy._enabled_validator = bv.Void()
SendForSignaturePolicy._other_validator = bv.Void()
SendForSignaturePolicy._tagmap = {
    'disabled': SendForSignaturePolicy._disabled_validator,
    'enabled': SendForSignaturePolicy._enabled_validator,
    'other': SendForSignaturePolicy._other_validator,
}

SendForSignaturePolicy.disabled = SendForSignaturePolicy('disabled')
SendForSignaturePolicy.enabled = SendForSignaturePolicy('enabled')
SendForSignaturePolicy.other = SendForSignaturePolicy('other')

SendForSignaturePolicyChangedDetails.new_value.validator = SendForSignaturePolicy_validator
SendForSignaturePolicyChangedDetails.previous_value.validator = SendForSignaturePolicy_validator
SendForSignaturePolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SendForSignaturePolicyChangedDetails._all_fields_ = [
    ('new_value', SendForSignaturePolicyChangedDetails.new_value.validator),
    ('previous_value', SendForSignaturePolicyChangedDetails.previous_value.validator),
]

SendForSignaturePolicyChangedType.description.validator = bv.String()
SendForSignaturePolicyChangedType._all_field_names_ = set(['description'])
SendForSignaturePolicyChangedType._all_fields_ = [('description', SendForSignaturePolicyChangedType.description.validator)]

SfAddGroupDetails.target_asset_index.validator = bv.UInt64()
SfAddGroupDetails.original_folder_name.validator = bv.String()
SfAddGroupDetails.sharing_permission.validator = bv.Nullable(bv.String())
SfAddGroupDetails.team_name.validator = bv.String()
SfAddGroupDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'sharing_permission',
    'team_name',
])
SfAddGroupDetails._all_fields_ = [
    ('target_asset_index', SfAddGroupDetails.target_asset_index.validator),
    ('original_folder_name', SfAddGroupDetails.original_folder_name.validator),
    ('sharing_permission', SfAddGroupDetails.sharing_permission.validator),
    ('team_name', SfAddGroupDetails.team_name.validator),
]

SfAddGroupType.description.validator = bv.String()
SfAddGroupType._all_field_names_ = set(['description'])
SfAddGroupType._all_fields_ = [('description', SfAddGroupType.description.validator)]

SfAllowNonMembersToViewSharedLinksDetails.target_asset_index.validator = bv.UInt64()
SfAllowNonMembersToViewSharedLinksDetails.original_folder_name.validator = bv.String()
SfAllowNonMembersToViewSharedLinksDetails.shared_folder_type.validator = bv.Nullable(bv.String())
SfAllowNonMembersToViewSharedLinksDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'shared_folder_type',
])
SfAllowNonMembersToViewSharedLinksDetails._all_fields_ = [
    ('target_asset_index', SfAllowNonMembersToViewSharedLinksDetails.target_asset_index.validator),
    ('original_folder_name', SfAllowNonMembersToViewSharedLinksDetails.original_folder_name.validator),
    ('shared_folder_type', SfAllowNonMembersToViewSharedLinksDetails.shared_folder_type.validator),
]

SfAllowNonMembersToViewSharedLinksType.description.validator = bv.String()
SfAllowNonMembersToViewSharedLinksType._all_field_names_ = set(['description'])
SfAllowNonMembersToViewSharedLinksType._all_fields_ = [('description', SfAllowNonMembersToViewSharedLinksType.description.validator)]

SfExternalInviteWarnDetails.target_asset_index.validator = bv.UInt64()
SfExternalInviteWarnDetails.original_folder_name.validator = bv.String()
SfExternalInviteWarnDetails.new_sharing_permission.validator = bv.Nullable(bv.String())
SfExternalInviteWarnDetails.previous_sharing_permission.validator = bv.Nullable(bv.String())
SfExternalInviteWarnDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'new_sharing_permission',
    'previous_sharing_permission',
])
SfExternalInviteWarnDetails._all_fields_ = [
    ('target_asset_index', SfExternalInviteWarnDetails.target_asset_index.validator),
    ('original_folder_name', SfExternalInviteWarnDetails.original_folder_name.validator),
    ('new_sharing_permission', SfExternalInviteWarnDetails.new_sharing_permission.validator),
    ('previous_sharing_permission', SfExternalInviteWarnDetails.previous_sharing_permission.validator),
]

SfExternalInviteWarnType.description.validator = bv.String()
SfExternalInviteWarnType._all_field_names_ = set(['description'])
SfExternalInviteWarnType._all_fields_ = [('description', SfExternalInviteWarnType.description.validator)]

SfFbInviteChangeRoleDetails.target_asset_index.validator = bv.UInt64()
SfFbInviteChangeRoleDetails.original_folder_name.validator = bv.String()
SfFbInviteChangeRoleDetails.previous_sharing_permission.validator = bv.Nullable(bv.String())
SfFbInviteChangeRoleDetails.new_sharing_permission.validator = bv.Nullable(bv.String())
SfFbInviteChangeRoleDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'previous_sharing_permission',
    'new_sharing_permission',
])
SfFbInviteChangeRoleDetails._all_fields_ = [
    ('target_asset_index', SfFbInviteChangeRoleDetails.target_asset_index.validator),
    ('original_folder_name', SfFbInviteChangeRoleDetails.original_folder_name.validator),
    ('previous_sharing_permission', SfFbInviteChangeRoleDetails.previous_sharing_permission.validator),
    ('new_sharing_permission', SfFbInviteChangeRoleDetails.new_sharing_permission.validator),
]

SfFbInviteChangeRoleType.description.validator = bv.String()
SfFbInviteChangeRoleType._all_field_names_ = set(['description'])
SfFbInviteChangeRoleType._all_fields_ = [('description', SfFbInviteChangeRoleType.description.validator)]

SfFbInviteDetails.target_asset_index.validator = bv.UInt64()
SfFbInviteDetails.original_folder_name.validator = bv.String()
SfFbInviteDetails.sharing_permission.validator = bv.Nullable(bv.String())
SfFbInviteDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'sharing_permission',
])
SfFbInviteDetails._all_fields_ = [
    ('target_asset_index', SfFbInviteDetails.target_asset_index.validator),
    ('original_folder_name', SfFbInviteDetails.original_folder_name.validator),
    ('sharing_permission', SfFbInviteDetails.sharing_permission.validator),
]

SfFbInviteType.description.validator = bv.String()
SfFbInviteType._all_field_names_ = set(['description'])
SfFbInviteType._all_fields_ = [('description', SfFbInviteType.description.validator)]

SfFbUninviteDetails.target_asset_index.validator = bv.UInt64()
SfFbUninviteDetails.original_folder_name.validator = bv.String()
SfFbUninviteDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
])
SfFbUninviteDetails._all_fields_ = [
    ('target_asset_index', SfFbUninviteDetails.target_asset_index.validator),
    ('original_folder_name', SfFbUninviteDetails.original_folder_name.validator),
]

SfFbUninviteType.description.validator = bv.String()
SfFbUninviteType._all_field_names_ = set(['description'])
SfFbUninviteType._all_fields_ = [('description', SfFbUninviteType.description.validator)]

SfInviteGroupDetails.target_asset_index.validator = bv.UInt64()
SfInviteGroupDetails._all_field_names_ = set(['target_asset_index'])
SfInviteGroupDetails._all_fields_ = [('target_asset_index', SfInviteGroupDetails.target_asset_index.validator)]

SfInviteGroupType.description.validator = bv.String()
SfInviteGroupType._all_field_names_ = set(['description'])
SfInviteGroupType._all_fields_ = [('description', SfInviteGroupType.description.validator)]

SfTeamGrantAccessDetails.target_asset_index.validator = bv.UInt64()
SfTeamGrantAccessDetails.original_folder_name.validator = bv.String()
SfTeamGrantAccessDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
])
SfTeamGrantAccessDetails._all_fields_ = [
    ('target_asset_index', SfTeamGrantAccessDetails.target_asset_index.validator),
    ('original_folder_name', SfTeamGrantAccessDetails.original_folder_name.validator),
]

SfTeamGrantAccessType.description.validator = bv.String()
SfTeamGrantAccessType._all_field_names_ = set(['description'])
SfTeamGrantAccessType._all_fields_ = [('description', SfTeamGrantAccessType.description.validator)]

SfTeamInviteChangeRoleDetails.target_asset_index.validator = bv.UInt64()
SfTeamInviteChangeRoleDetails.original_folder_name.validator = bv.String()
SfTeamInviteChangeRoleDetails.new_sharing_permission.validator = bv.Nullable(bv.String())
SfTeamInviteChangeRoleDetails.previous_sharing_permission.validator = bv.Nullable(bv.String())
SfTeamInviteChangeRoleDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'new_sharing_permission',
    'previous_sharing_permission',
])
SfTeamInviteChangeRoleDetails._all_fields_ = [
    ('target_asset_index', SfTeamInviteChangeRoleDetails.target_asset_index.validator),
    ('original_folder_name', SfTeamInviteChangeRoleDetails.original_folder_name.validator),
    ('new_sharing_permission', SfTeamInviteChangeRoleDetails.new_sharing_permission.validator),
    ('previous_sharing_permission', SfTeamInviteChangeRoleDetails.previous_sharing_permission.validator),
]

SfTeamInviteChangeRoleType.description.validator = bv.String()
SfTeamInviteChangeRoleType._all_field_names_ = set(['description'])
SfTeamInviteChangeRoleType._all_fields_ = [('description', SfTeamInviteChangeRoleType.description.validator)]

SfTeamInviteDetails.target_asset_index.validator = bv.UInt64()
SfTeamInviteDetails.original_folder_name.validator = bv.String()
SfTeamInviteDetails.sharing_permission.validator = bv.Nullable(bv.String())
SfTeamInviteDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'sharing_permission',
])
SfTeamInviteDetails._all_fields_ = [
    ('target_asset_index', SfTeamInviteDetails.target_asset_index.validator),
    ('original_folder_name', SfTeamInviteDetails.original_folder_name.validator),
    ('sharing_permission', SfTeamInviteDetails.sharing_permission.validator),
]

SfTeamInviteType.description.validator = bv.String()
SfTeamInviteType._all_field_names_ = set(['description'])
SfTeamInviteType._all_fields_ = [('description', SfTeamInviteType.description.validator)]

SfTeamJoinDetails.target_asset_index.validator = bv.UInt64()
SfTeamJoinDetails.original_folder_name.validator = bv.String()
SfTeamJoinDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
])
SfTeamJoinDetails._all_fields_ = [
    ('target_asset_index', SfTeamJoinDetails.target_asset_index.validator),
    ('original_folder_name', SfTeamJoinDetails.original_folder_name.validator),
]

SfTeamJoinFromOobLinkDetails.target_asset_index.validator = bv.UInt64()
SfTeamJoinFromOobLinkDetails.original_folder_name.validator = bv.String()
SfTeamJoinFromOobLinkDetails.token_key.validator = bv.Nullable(bv.String())
SfTeamJoinFromOobLinkDetails.sharing_permission.validator = bv.Nullable(bv.String())
SfTeamJoinFromOobLinkDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
    'token_key',
    'sharing_permission',
])
SfTeamJoinFromOobLinkDetails._all_fields_ = [
    ('target_asset_index', SfTeamJoinFromOobLinkDetails.target_asset_index.validator),
    ('original_folder_name', SfTeamJoinFromOobLinkDetails.original_folder_name.validator),
    ('token_key', SfTeamJoinFromOobLinkDetails.token_key.validator),
    ('sharing_permission', SfTeamJoinFromOobLinkDetails.sharing_permission.validator),
]

SfTeamJoinFromOobLinkType.description.validator = bv.String()
SfTeamJoinFromOobLinkType._all_field_names_ = set(['description'])
SfTeamJoinFromOobLinkType._all_fields_ = [('description', SfTeamJoinFromOobLinkType.description.validator)]

SfTeamJoinType.description.validator = bv.String()
SfTeamJoinType._all_field_names_ = set(['description'])
SfTeamJoinType._all_fields_ = [('description', SfTeamJoinType.description.validator)]

SfTeamUninviteDetails.target_asset_index.validator = bv.UInt64()
SfTeamUninviteDetails.original_folder_name.validator = bv.String()
SfTeamUninviteDetails._all_field_names_ = set([
    'target_asset_index',
    'original_folder_name',
])
SfTeamUninviteDetails._all_fields_ = [
    ('target_asset_index', SfTeamUninviteDetails.target_asset_index.validator),
    ('original_folder_name', SfTeamUninviteDetails.original_folder_name.validator),
]

SfTeamUninviteType.description.validator = bv.String()
SfTeamUninviteType._all_field_names_ = set(['description'])
SfTeamUninviteType._all_fields_ = [('description', SfTeamUninviteType.description.validator)]

SharedContentAddInviteesDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentAddInviteesDetails.invitees.validator = bv.List(EmailAddress_validator)
SharedContentAddInviteesDetails._all_field_names_ = set([
    'shared_content_access_level',
    'invitees',
])
SharedContentAddInviteesDetails._all_fields_ = [
    ('shared_content_access_level', SharedContentAddInviteesDetails.shared_content_access_level.validator),
    ('invitees', SharedContentAddInviteesDetails.invitees.validator),
]

SharedContentAddInviteesType.description.validator = bv.String()
SharedContentAddInviteesType._all_field_names_ = set(['description'])
SharedContentAddInviteesType._all_fields_ = [('description', SharedContentAddInviteesType.description.validator)]

SharedContentAddLinkExpiryDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedContentAddLinkExpiryDetails._all_field_names_ = set(['new_value'])
SharedContentAddLinkExpiryDetails._all_fields_ = [('new_value', SharedContentAddLinkExpiryDetails.new_value.validator)]

SharedContentAddLinkExpiryType.description.validator = bv.String()
SharedContentAddLinkExpiryType._all_field_names_ = set(['description'])
SharedContentAddLinkExpiryType._all_fields_ = [('description', SharedContentAddLinkExpiryType.description.validator)]

SharedContentAddLinkPasswordDetails._all_field_names_ = set([])
SharedContentAddLinkPasswordDetails._all_fields_ = []

SharedContentAddLinkPasswordType.description.validator = bv.String()
SharedContentAddLinkPasswordType._all_field_names_ = set(['description'])
SharedContentAddLinkPasswordType._all_fields_ = [('description', SharedContentAddLinkPasswordType.description.validator)]

SharedContentAddMemberDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentAddMemberDetails._all_field_names_ = set(['shared_content_access_level'])
SharedContentAddMemberDetails._all_fields_ = [('shared_content_access_level', SharedContentAddMemberDetails.shared_content_access_level.validator)]

SharedContentAddMemberType.description.validator = bv.String()
SharedContentAddMemberType._all_field_names_ = set(['description'])
SharedContentAddMemberType._all_fields_ = [('description', SharedContentAddMemberType.description.validator)]

SharedContentChangeDownloadsPolicyDetails.new_value.validator = DownloadPolicyType_validator
SharedContentChangeDownloadsPolicyDetails.previous_value.validator = bv.Nullable(DownloadPolicyType_validator)
SharedContentChangeDownloadsPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedContentChangeDownloadsPolicyDetails._all_fields_ = [
    ('new_value', SharedContentChangeDownloadsPolicyDetails.new_value.validator),
    ('previous_value', SharedContentChangeDownloadsPolicyDetails.previous_value.validator),
]

SharedContentChangeDownloadsPolicyType.description.validator = bv.String()
SharedContentChangeDownloadsPolicyType._all_field_names_ = set(['description'])
SharedContentChangeDownloadsPolicyType._all_fields_ = [('description', SharedContentChangeDownloadsPolicyType.description.validator)]

SharedContentChangeInviteeRoleDetails.previous_access_level.validator = bv.Nullable(sharing.AccessLevel_validator)
SharedContentChangeInviteeRoleDetails.new_access_level.validator = sharing.AccessLevel_validator
SharedContentChangeInviteeRoleDetails.invitee.validator = EmailAddress_validator
SharedContentChangeInviteeRoleDetails._all_field_names_ = set([
    'previous_access_level',
    'new_access_level',
    'invitee',
])
SharedContentChangeInviteeRoleDetails._all_fields_ = [
    ('previous_access_level', SharedContentChangeInviteeRoleDetails.previous_access_level.validator),
    ('new_access_level', SharedContentChangeInviteeRoleDetails.new_access_level.validator),
    ('invitee', SharedContentChangeInviteeRoleDetails.invitee.validator),
]

SharedContentChangeInviteeRoleType.description.validator = bv.String()
SharedContentChangeInviteeRoleType._all_field_names_ = set(['description'])
SharedContentChangeInviteeRoleType._all_fields_ = [('description', SharedContentChangeInviteeRoleType.description.validator)]

SharedContentChangeLinkAudienceDetails.new_value.validator = sharing.LinkAudience_validator
SharedContentChangeLinkAudienceDetails.previous_value.validator = bv.Nullable(sharing.LinkAudience_validator)
SharedContentChangeLinkAudienceDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedContentChangeLinkAudienceDetails._all_fields_ = [
    ('new_value', SharedContentChangeLinkAudienceDetails.new_value.validator),
    ('previous_value', SharedContentChangeLinkAudienceDetails.previous_value.validator),
]

SharedContentChangeLinkAudienceType.description.validator = bv.String()
SharedContentChangeLinkAudienceType._all_field_names_ = set(['description'])
SharedContentChangeLinkAudienceType._all_fields_ = [('description', SharedContentChangeLinkAudienceType.description.validator)]

SharedContentChangeLinkExpiryDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedContentChangeLinkExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedContentChangeLinkExpiryDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedContentChangeLinkExpiryDetails._all_fields_ = [
    ('new_value', SharedContentChangeLinkExpiryDetails.new_value.validator),
    ('previous_value', SharedContentChangeLinkExpiryDetails.previous_value.validator),
]

SharedContentChangeLinkExpiryType.description.validator = bv.String()
SharedContentChangeLinkExpiryType._all_field_names_ = set(['description'])
SharedContentChangeLinkExpiryType._all_fields_ = [('description', SharedContentChangeLinkExpiryType.description.validator)]

SharedContentChangeLinkPasswordDetails._all_field_names_ = set([])
SharedContentChangeLinkPasswordDetails._all_fields_ = []

SharedContentChangeLinkPasswordType.description.validator = bv.String()
SharedContentChangeLinkPasswordType._all_field_names_ = set(['description'])
SharedContentChangeLinkPasswordType._all_fields_ = [('description', SharedContentChangeLinkPasswordType.description.validator)]

SharedContentChangeMemberRoleDetails.previous_access_level.validator = bv.Nullable(sharing.AccessLevel_validator)
SharedContentChangeMemberRoleDetails.new_access_level.validator = sharing.AccessLevel_validator
SharedContentChangeMemberRoleDetails._all_field_names_ = set([
    'previous_access_level',
    'new_access_level',
])
SharedContentChangeMemberRoleDetails._all_fields_ = [
    ('previous_access_level', SharedContentChangeMemberRoleDetails.previous_access_level.validator),
    ('new_access_level', SharedContentChangeMemberRoleDetails.new_access_level.validator),
]

SharedContentChangeMemberRoleType.description.validator = bv.String()
SharedContentChangeMemberRoleType._all_field_names_ = set(['description'])
SharedContentChangeMemberRoleType._all_fields_ = [('description', SharedContentChangeMemberRoleType.description.validator)]

SharedContentChangeViewerInfoPolicyDetails.new_value.validator = sharing.ViewerInfoPolicy_validator
SharedContentChangeViewerInfoPolicyDetails.previous_value.validator = bv.Nullable(sharing.ViewerInfoPolicy_validator)
SharedContentChangeViewerInfoPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedContentChangeViewerInfoPolicyDetails._all_fields_ = [
    ('new_value', SharedContentChangeViewerInfoPolicyDetails.new_value.validator),
    ('previous_value', SharedContentChangeViewerInfoPolicyDetails.previous_value.validator),
]

SharedContentChangeViewerInfoPolicyType.description.validator = bv.String()
SharedContentChangeViewerInfoPolicyType._all_field_names_ = set(['description'])
SharedContentChangeViewerInfoPolicyType._all_fields_ = [('description', SharedContentChangeViewerInfoPolicyType.description.validator)]

SharedContentClaimInvitationDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedContentClaimInvitationDetails._all_field_names_ = set(['shared_content_link'])
SharedContentClaimInvitationDetails._all_fields_ = [('shared_content_link', SharedContentClaimInvitationDetails.shared_content_link.validator)]

SharedContentClaimInvitationType.description.validator = bv.String()
SharedContentClaimInvitationType._all_field_names_ = set(['description'])
SharedContentClaimInvitationType._all_fields_ = [('description', SharedContentClaimInvitationType.description.validator)]

SharedContentCopyDetails.shared_content_link.validator = bv.String()
SharedContentCopyDetails.shared_content_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedContentCopyDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentCopyDetails.destination_path.validator = FilePath_validator
SharedContentCopyDetails._all_field_names_ = set([
    'shared_content_link',
    'shared_content_owner',
    'shared_content_access_level',
    'destination_path',
])
SharedContentCopyDetails._all_fields_ = [
    ('shared_content_link', SharedContentCopyDetails.shared_content_link.validator),
    ('shared_content_owner', SharedContentCopyDetails.shared_content_owner.validator),
    ('shared_content_access_level', SharedContentCopyDetails.shared_content_access_level.validator),
    ('destination_path', SharedContentCopyDetails.destination_path.validator),
]

SharedContentCopyType.description.validator = bv.String()
SharedContentCopyType._all_field_names_ = set(['description'])
SharedContentCopyType._all_fields_ = [('description', SharedContentCopyType.description.validator)]

SharedContentDownloadDetails.shared_content_link.validator = bv.String()
SharedContentDownloadDetails.shared_content_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedContentDownloadDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentDownloadDetails._all_field_names_ = set([
    'shared_content_link',
    'shared_content_owner',
    'shared_content_access_level',
])
SharedContentDownloadDetails._all_fields_ = [
    ('shared_content_link', SharedContentDownloadDetails.shared_content_link.validator),
    ('shared_content_owner', SharedContentDownloadDetails.shared_content_owner.validator),
    ('shared_content_access_level', SharedContentDownloadDetails.shared_content_access_level.validator),
]

SharedContentDownloadType.description.validator = bv.String()
SharedContentDownloadType._all_field_names_ = set(['description'])
SharedContentDownloadType._all_fields_ = [('description', SharedContentDownloadType.description.validator)]

SharedContentRelinquishMembershipDetails._all_field_names_ = set([])
SharedContentRelinquishMembershipDetails._all_fields_ = []

SharedContentRelinquishMembershipType.description.validator = bv.String()
SharedContentRelinquishMembershipType._all_field_names_ = set(['description'])
SharedContentRelinquishMembershipType._all_fields_ = [('description', SharedContentRelinquishMembershipType.description.validator)]

SharedContentRemoveInviteesDetails.invitees.validator = bv.List(EmailAddress_validator)
SharedContentRemoveInviteesDetails._all_field_names_ = set(['invitees'])
SharedContentRemoveInviteesDetails._all_fields_ = [('invitees', SharedContentRemoveInviteesDetails.invitees.validator)]

SharedContentRemoveInviteesType.description.validator = bv.String()
SharedContentRemoveInviteesType._all_field_names_ = set(['description'])
SharedContentRemoveInviteesType._all_fields_ = [('description', SharedContentRemoveInviteesType.description.validator)]

SharedContentRemoveLinkExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedContentRemoveLinkExpiryDetails._all_field_names_ = set(['previous_value'])
SharedContentRemoveLinkExpiryDetails._all_fields_ = [('previous_value', SharedContentRemoveLinkExpiryDetails.previous_value.validator)]

SharedContentRemoveLinkExpiryType.description.validator = bv.String()
SharedContentRemoveLinkExpiryType._all_field_names_ = set(['description'])
SharedContentRemoveLinkExpiryType._all_fields_ = [('description', SharedContentRemoveLinkExpiryType.description.validator)]

SharedContentRemoveLinkPasswordDetails._all_field_names_ = set([])
SharedContentRemoveLinkPasswordDetails._all_fields_ = []

SharedContentRemoveLinkPasswordType.description.validator = bv.String()
SharedContentRemoveLinkPasswordType._all_field_names_ = set(['description'])
SharedContentRemoveLinkPasswordType._all_fields_ = [('description', SharedContentRemoveLinkPasswordType.description.validator)]

SharedContentRemoveMemberDetails.shared_content_access_level.validator = bv.Nullable(sharing.AccessLevel_validator)
SharedContentRemoveMemberDetails._all_field_names_ = set(['shared_content_access_level'])
SharedContentRemoveMemberDetails._all_fields_ = [('shared_content_access_level', SharedContentRemoveMemberDetails.shared_content_access_level.validator)]

SharedContentRemoveMemberType.description.validator = bv.String()
SharedContentRemoveMemberType._all_field_names_ = set(['description'])
SharedContentRemoveMemberType._all_fields_ = [('description', SharedContentRemoveMemberType.description.validator)]

SharedContentRequestAccessDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedContentRequestAccessDetails._all_field_names_ = set(['shared_content_link'])
SharedContentRequestAccessDetails._all_fields_ = [('shared_content_link', SharedContentRequestAccessDetails.shared_content_link.validator)]

SharedContentRequestAccessType.description.validator = bv.String()
SharedContentRequestAccessType._all_field_names_ = set(['description'])
SharedContentRequestAccessType._all_fields_ = [('description', SharedContentRequestAccessType.description.validator)]

SharedContentRestoreInviteesDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentRestoreInviteesDetails.invitees.validator = bv.List(EmailAddress_validator)
SharedContentRestoreInviteesDetails._all_field_names_ = set([
    'shared_content_access_level',
    'invitees',
])
SharedContentRestoreInviteesDetails._all_fields_ = [
    ('shared_content_access_level', SharedContentRestoreInviteesDetails.shared_content_access_level.validator),
    ('invitees', SharedContentRestoreInviteesDetails.invitees.validator),
]

SharedContentRestoreInviteesType.description.validator = bv.String()
SharedContentRestoreInviteesType._all_field_names_ = set(['description'])
SharedContentRestoreInviteesType._all_fields_ = [('description', SharedContentRestoreInviteesType.description.validator)]

SharedContentRestoreMemberDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentRestoreMemberDetails._all_field_names_ = set(['shared_content_access_level'])
SharedContentRestoreMemberDetails._all_fields_ = [('shared_content_access_level', SharedContentRestoreMemberDetails.shared_content_access_level.validator)]

SharedContentRestoreMemberType.description.validator = bv.String()
SharedContentRestoreMemberType._all_field_names_ = set(['description'])
SharedContentRestoreMemberType._all_fields_ = [('description', SharedContentRestoreMemberType.description.validator)]

SharedContentUnshareDetails._all_field_names_ = set([])
SharedContentUnshareDetails._all_fields_ = []

SharedContentUnshareType.description.validator = bv.String()
SharedContentUnshareType._all_field_names_ = set(['description'])
SharedContentUnshareType._all_fields_ = [('description', SharedContentUnshareType.description.validator)]

SharedContentViewDetails.shared_content_link.validator = bv.String()
SharedContentViewDetails.shared_content_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedContentViewDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedContentViewDetails._all_field_names_ = set([
    'shared_content_link',
    'shared_content_owner',
    'shared_content_access_level',
])
SharedContentViewDetails._all_fields_ = [
    ('shared_content_link', SharedContentViewDetails.shared_content_link.validator),
    ('shared_content_owner', SharedContentViewDetails.shared_content_owner.validator),
    ('shared_content_access_level', SharedContentViewDetails.shared_content_access_level.validator),
]

SharedContentViewType.description.validator = bv.String()
SharedContentViewType._all_field_names_ = set(['description'])
SharedContentViewType._all_fields_ = [('description', SharedContentViewType.description.validator)]

SharedFolderChangeLinkPolicyDetails.new_value.validator = sharing.SharedLinkPolicy_validator
SharedFolderChangeLinkPolicyDetails.previous_value.validator = bv.Nullable(sharing.SharedLinkPolicy_validator)
SharedFolderChangeLinkPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedFolderChangeLinkPolicyDetails._all_fields_ = [
    ('new_value', SharedFolderChangeLinkPolicyDetails.new_value.validator),
    ('previous_value', SharedFolderChangeLinkPolicyDetails.previous_value.validator),
]

SharedFolderChangeLinkPolicyType.description.validator = bv.String()
SharedFolderChangeLinkPolicyType._all_field_names_ = set(['description'])
SharedFolderChangeLinkPolicyType._all_fields_ = [('description', SharedFolderChangeLinkPolicyType.description.validator)]

SharedFolderChangeMembersInheritancePolicyDetails.new_value.validator = SharedFolderMembersInheritancePolicy_validator
SharedFolderChangeMembersInheritancePolicyDetails.previous_value.validator = bv.Nullable(SharedFolderMembersInheritancePolicy_validator)
SharedFolderChangeMembersInheritancePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedFolderChangeMembersInheritancePolicyDetails._all_fields_ = [
    ('new_value', SharedFolderChangeMembersInheritancePolicyDetails.new_value.validator),
    ('previous_value', SharedFolderChangeMembersInheritancePolicyDetails.previous_value.validator),
]

SharedFolderChangeMembersInheritancePolicyType.description.validator = bv.String()
SharedFolderChangeMembersInheritancePolicyType._all_field_names_ = set(['description'])
SharedFolderChangeMembersInheritancePolicyType._all_fields_ = [('description', SharedFolderChangeMembersInheritancePolicyType.description.validator)]

SharedFolderChangeMembersManagementPolicyDetails.new_value.validator = sharing.AclUpdatePolicy_validator
SharedFolderChangeMembersManagementPolicyDetails.previous_value.validator = bv.Nullable(sharing.AclUpdatePolicy_validator)
SharedFolderChangeMembersManagementPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedFolderChangeMembersManagementPolicyDetails._all_fields_ = [
    ('new_value', SharedFolderChangeMembersManagementPolicyDetails.new_value.validator),
    ('previous_value', SharedFolderChangeMembersManagementPolicyDetails.previous_value.validator),
]

SharedFolderChangeMembersManagementPolicyType.description.validator = bv.String()
SharedFolderChangeMembersManagementPolicyType._all_field_names_ = set(['description'])
SharedFolderChangeMembersManagementPolicyType._all_fields_ = [('description', SharedFolderChangeMembersManagementPolicyType.description.validator)]

SharedFolderChangeMembersPolicyDetails.new_value.validator = sharing.MemberPolicy_validator
SharedFolderChangeMembersPolicyDetails.previous_value.validator = bv.Nullable(sharing.MemberPolicy_validator)
SharedFolderChangeMembersPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedFolderChangeMembersPolicyDetails._all_fields_ = [
    ('new_value', SharedFolderChangeMembersPolicyDetails.new_value.validator),
    ('previous_value', SharedFolderChangeMembersPolicyDetails.previous_value.validator),
]

SharedFolderChangeMembersPolicyType.description.validator = bv.String()
SharedFolderChangeMembersPolicyType._all_field_names_ = set(['description'])
SharedFolderChangeMembersPolicyType._all_fields_ = [('description', SharedFolderChangeMembersPolicyType.description.validator)]

SharedFolderCreateDetails.target_ns_id.validator = bv.Nullable(NamespaceId_validator)
SharedFolderCreateDetails._all_field_names_ = set(['target_ns_id'])
SharedFolderCreateDetails._all_fields_ = [('target_ns_id', SharedFolderCreateDetails.target_ns_id.validator)]

SharedFolderCreateType.description.validator = bv.String()
SharedFolderCreateType._all_field_names_ = set(['description'])
SharedFolderCreateType._all_fields_ = [('description', SharedFolderCreateType.description.validator)]

SharedFolderDeclineInvitationDetails._all_field_names_ = set([])
SharedFolderDeclineInvitationDetails._all_fields_ = []

SharedFolderDeclineInvitationType.description.validator = bv.String()
SharedFolderDeclineInvitationType._all_field_names_ = set(['description'])
SharedFolderDeclineInvitationType._all_fields_ = [('description', SharedFolderDeclineInvitationType.description.validator)]

SharedFolderMembersInheritancePolicy._dont_inherit_members_validator = bv.Void()
SharedFolderMembersInheritancePolicy._inherit_members_validator = bv.Void()
SharedFolderMembersInheritancePolicy._other_validator = bv.Void()
SharedFolderMembersInheritancePolicy._tagmap = {
    'dont_inherit_members': SharedFolderMembersInheritancePolicy._dont_inherit_members_validator,
    'inherit_members': SharedFolderMembersInheritancePolicy._inherit_members_validator,
    'other': SharedFolderMembersInheritancePolicy._other_validator,
}

SharedFolderMembersInheritancePolicy.dont_inherit_members = SharedFolderMembersInheritancePolicy('dont_inherit_members')
SharedFolderMembersInheritancePolicy.inherit_members = SharedFolderMembersInheritancePolicy('inherit_members')
SharedFolderMembersInheritancePolicy.other = SharedFolderMembersInheritancePolicy('other')

SharedFolderMountDetails._all_field_names_ = set([])
SharedFolderMountDetails._all_fields_ = []

SharedFolderMountType.description.validator = bv.String()
SharedFolderMountType._all_field_names_ = set(['description'])
SharedFolderMountType._all_fields_ = [('description', SharedFolderMountType.description.validator)]

SharedFolderNestDetails.previous_parent_ns_id.validator = bv.Nullable(NamespaceId_validator)
SharedFolderNestDetails.new_parent_ns_id.validator = bv.Nullable(NamespaceId_validator)
SharedFolderNestDetails.previous_ns_path.validator = bv.Nullable(FilePath_validator)
SharedFolderNestDetails.new_ns_path.validator = bv.Nullable(FilePath_validator)
SharedFolderNestDetails._all_field_names_ = set([
    'previous_parent_ns_id',
    'new_parent_ns_id',
    'previous_ns_path',
    'new_ns_path',
])
SharedFolderNestDetails._all_fields_ = [
    ('previous_parent_ns_id', SharedFolderNestDetails.previous_parent_ns_id.validator),
    ('new_parent_ns_id', SharedFolderNestDetails.new_parent_ns_id.validator),
    ('previous_ns_path', SharedFolderNestDetails.previous_ns_path.validator),
    ('new_ns_path', SharedFolderNestDetails.new_ns_path.validator),
]

SharedFolderNestType.description.validator = bv.String()
SharedFolderNestType._all_field_names_ = set(['description'])
SharedFolderNestType._all_fields_ = [('description', SharedFolderNestType.description.validator)]

SharedFolderTransferOwnershipDetails.previous_owner_email.validator = bv.Nullable(EmailAddress_validator)
SharedFolderTransferOwnershipDetails.new_owner_email.validator = EmailAddress_validator
SharedFolderTransferOwnershipDetails._all_field_names_ = set([
    'previous_owner_email',
    'new_owner_email',
])
SharedFolderTransferOwnershipDetails._all_fields_ = [
    ('previous_owner_email', SharedFolderTransferOwnershipDetails.previous_owner_email.validator),
    ('new_owner_email', SharedFolderTransferOwnershipDetails.new_owner_email.validator),
]

SharedFolderTransferOwnershipType.description.validator = bv.String()
SharedFolderTransferOwnershipType._all_field_names_ = set(['description'])
SharedFolderTransferOwnershipType._all_fields_ = [('description', SharedFolderTransferOwnershipType.description.validator)]

SharedFolderUnmountDetails._all_field_names_ = set([])
SharedFolderUnmountDetails._all_fields_ = []

SharedFolderUnmountType.description.validator = bv.String()
SharedFolderUnmountType._all_field_names_ = set(['description'])
SharedFolderUnmountType._all_fields_ = [('description', SharedFolderUnmountType.description.validator)]

SharedLinkAccessLevel._none_validator = bv.Void()
SharedLinkAccessLevel._reader_validator = bv.Void()
SharedLinkAccessLevel._writer_validator = bv.Void()
SharedLinkAccessLevel._other_validator = bv.Void()
SharedLinkAccessLevel._tagmap = {
    'none': SharedLinkAccessLevel._none_validator,
    'reader': SharedLinkAccessLevel._reader_validator,
    'writer': SharedLinkAccessLevel._writer_validator,
    'other': SharedLinkAccessLevel._other_validator,
}

SharedLinkAccessLevel.none = SharedLinkAccessLevel('none')
SharedLinkAccessLevel.reader = SharedLinkAccessLevel('reader')
SharedLinkAccessLevel.writer = SharedLinkAccessLevel('writer')
SharedLinkAccessLevel.other = SharedLinkAccessLevel('other')

SharedLinkAddExpiryDetails.new_value.validator = common.DropboxTimestamp_validator
SharedLinkAddExpiryDetails._all_field_names_ = set(['new_value'])
SharedLinkAddExpiryDetails._all_fields_ = [('new_value', SharedLinkAddExpiryDetails.new_value.validator)]

SharedLinkAddExpiryType.description.validator = bv.String()
SharedLinkAddExpiryType._all_field_names_ = set(['description'])
SharedLinkAddExpiryType._all_fields_ = [('description', SharedLinkAddExpiryType.description.validator)]

SharedLinkChangeExpiryDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkChangeExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkChangeExpiryDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedLinkChangeExpiryDetails._all_fields_ = [
    ('new_value', SharedLinkChangeExpiryDetails.new_value.validator),
    ('previous_value', SharedLinkChangeExpiryDetails.previous_value.validator),
]

SharedLinkChangeExpiryType.description.validator = bv.String()
SharedLinkChangeExpiryType._all_field_names_ = set(['description'])
SharedLinkChangeExpiryType._all_fields_ = [('description', SharedLinkChangeExpiryType.description.validator)]

SharedLinkChangeVisibilityDetails.new_value.validator = SharedLinkVisibility_validator
SharedLinkChangeVisibilityDetails.previous_value.validator = bv.Nullable(SharedLinkVisibility_validator)
SharedLinkChangeVisibilityDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharedLinkChangeVisibilityDetails._all_fields_ = [
    ('new_value', SharedLinkChangeVisibilityDetails.new_value.validator),
    ('previous_value', SharedLinkChangeVisibilityDetails.previous_value.validator),
]

SharedLinkChangeVisibilityType.description.validator = bv.String()
SharedLinkChangeVisibilityType._all_field_names_ = set(['description'])
SharedLinkChangeVisibilityType._all_fields_ = [('description', SharedLinkChangeVisibilityType.description.validator)]

SharedLinkCopyDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedLinkCopyDetails._all_field_names_ = set(['shared_link_owner'])
SharedLinkCopyDetails._all_fields_ = [('shared_link_owner', SharedLinkCopyDetails.shared_link_owner.validator)]

SharedLinkCopyType.description.validator = bv.String()
SharedLinkCopyType._all_field_names_ = set(['description'])
SharedLinkCopyType._all_fields_ = [('description', SharedLinkCopyType.description.validator)]

SharedLinkCreateDetails.shared_link_access_level.validator = bv.Nullable(SharedLinkAccessLevel_validator)
SharedLinkCreateDetails._all_field_names_ = set(['shared_link_access_level'])
SharedLinkCreateDetails._all_fields_ = [('shared_link_access_level', SharedLinkCreateDetails.shared_link_access_level.validator)]

SharedLinkCreateType.description.validator = bv.String()
SharedLinkCreateType._all_field_names_ = set(['description'])
SharedLinkCreateType._all_fields_ = [('description', SharedLinkCreateType.description.validator)]

SharedLinkDisableDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedLinkDisableDetails._all_field_names_ = set(['shared_link_owner'])
SharedLinkDisableDetails._all_fields_ = [('shared_link_owner', SharedLinkDisableDetails.shared_link_owner.validator)]

SharedLinkDisableType.description.validator = bv.String()
SharedLinkDisableType._all_field_names_ = set(['description'])
SharedLinkDisableType._all_fields_ = [('description', SharedLinkDisableType.description.validator)]

SharedLinkDownloadDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedLinkDownloadDetails._all_field_names_ = set(['shared_link_owner'])
SharedLinkDownloadDetails._all_fields_ = [('shared_link_owner', SharedLinkDownloadDetails.shared_link_owner.validator)]

SharedLinkDownloadType.description.validator = bv.String()
SharedLinkDownloadType._all_field_names_ = set(['description'])
SharedLinkDownloadType._all_fields_ = [('description', SharedLinkDownloadType.description.validator)]

SharedLinkRemoveExpiryDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkRemoveExpiryDetails._all_field_names_ = set(['previous_value'])
SharedLinkRemoveExpiryDetails._all_fields_ = [('previous_value', SharedLinkRemoveExpiryDetails.previous_value.validator)]

SharedLinkRemoveExpiryType.description.validator = bv.String()
SharedLinkRemoveExpiryType._all_field_names_ = set(['description'])
SharedLinkRemoveExpiryType._all_fields_ = [('description', SharedLinkRemoveExpiryType.description.validator)]

SharedLinkSettingsAddExpirationDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsAddExpirationDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsAddExpirationDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkSettingsAddExpirationDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
    'new_value',
])
SharedLinkSettingsAddExpirationDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsAddExpirationDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsAddExpirationDetails.shared_content_link.validator),
    ('new_value', SharedLinkSettingsAddExpirationDetails.new_value.validator),
]

SharedLinkSettingsAddExpirationType.description.validator = bv.String()
SharedLinkSettingsAddExpirationType._all_field_names_ = set(['description'])
SharedLinkSettingsAddExpirationType._all_fields_ = [('description', SharedLinkSettingsAddExpirationType.description.validator)]

SharedLinkSettingsAddPasswordDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsAddPasswordDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsAddPasswordDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
])
SharedLinkSettingsAddPasswordDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsAddPasswordDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsAddPasswordDetails.shared_content_link.validator),
]

SharedLinkSettingsAddPasswordType.description.validator = bv.String()
SharedLinkSettingsAddPasswordType._all_field_names_ = set(['description'])
SharedLinkSettingsAddPasswordType._all_fields_ = [('description', SharedLinkSettingsAddPasswordType.description.validator)]

SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsAllowDownloadDisabledDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
])
SharedLinkSettingsAllowDownloadDisabledDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsAllowDownloadDisabledDetails.shared_content_link.validator),
]

SharedLinkSettingsAllowDownloadDisabledType.description.validator = bv.String()
SharedLinkSettingsAllowDownloadDisabledType._all_field_names_ = set(['description'])
SharedLinkSettingsAllowDownloadDisabledType._all_fields_ = [('description', SharedLinkSettingsAllowDownloadDisabledType.description.validator)]

SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsAllowDownloadEnabledDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
])
SharedLinkSettingsAllowDownloadEnabledDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsAllowDownloadEnabledDetails.shared_content_link.validator),
]

SharedLinkSettingsAllowDownloadEnabledType.description.validator = bv.String()
SharedLinkSettingsAllowDownloadEnabledType._all_field_names_ = set(['description'])
SharedLinkSettingsAllowDownloadEnabledType._all_fields_ = [('description', SharedLinkSettingsAllowDownloadEnabledType.description.validator)]

SharedLinkSettingsChangeAudienceDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsChangeAudienceDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsChangeAudienceDetails.new_value.validator = sharing.LinkAudience_validator
SharedLinkSettingsChangeAudienceDetails.previous_value.validator = bv.Nullable(sharing.LinkAudience_validator)
SharedLinkSettingsChangeAudienceDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
    'new_value',
    'previous_value',
])
SharedLinkSettingsChangeAudienceDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsChangeAudienceDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsChangeAudienceDetails.shared_content_link.validator),
    ('new_value', SharedLinkSettingsChangeAudienceDetails.new_value.validator),
    ('previous_value', SharedLinkSettingsChangeAudienceDetails.previous_value.validator),
]

SharedLinkSettingsChangeAudienceType.description.validator = bv.String()
SharedLinkSettingsChangeAudienceType._all_field_names_ = set(['description'])
SharedLinkSettingsChangeAudienceType._all_fields_ = [('description', SharedLinkSettingsChangeAudienceType.description.validator)]

SharedLinkSettingsChangeExpirationDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsChangeExpirationDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsChangeExpirationDetails.new_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkSettingsChangeExpirationDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkSettingsChangeExpirationDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
    'new_value',
    'previous_value',
])
SharedLinkSettingsChangeExpirationDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsChangeExpirationDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsChangeExpirationDetails.shared_content_link.validator),
    ('new_value', SharedLinkSettingsChangeExpirationDetails.new_value.validator),
    ('previous_value', SharedLinkSettingsChangeExpirationDetails.previous_value.validator),
]

SharedLinkSettingsChangeExpirationType.description.validator = bv.String()
SharedLinkSettingsChangeExpirationType._all_field_names_ = set(['description'])
SharedLinkSettingsChangeExpirationType._all_fields_ = [('description', SharedLinkSettingsChangeExpirationType.description.validator)]

SharedLinkSettingsChangePasswordDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsChangePasswordDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsChangePasswordDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
])
SharedLinkSettingsChangePasswordDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsChangePasswordDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsChangePasswordDetails.shared_content_link.validator),
]

SharedLinkSettingsChangePasswordType.description.validator = bv.String()
SharedLinkSettingsChangePasswordType._all_field_names_ = set(['description'])
SharedLinkSettingsChangePasswordType._all_fields_ = [('description', SharedLinkSettingsChangePasswordType.description.validator)]

SharedLinkSettingsRemoveExpirationDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsRemoveExpirationDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsRemoveExpirationDetails.previous_value.validator = bv.Nullable(common.DropboxTimestamp_validator)
SharedLinkSettingsRemoveExpirationDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
    'previous_value',
])
SharedLinkSettingsRemoveExpirationDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsRemoveExpirationDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsRemoveExpirationDetails.shared_content_link.validator),
    ('previous_value', SharedLinkSettingsRemoveExpirationDetails.previous_value.validator),
]

SharedLinkSettingsRemoveExpirationType.description.validator = bv.String()
SharedLinkSettingsRemoveExpirationType._all_field_names_ = set(['description'])
SharedLinkSettingsRemoveExpirationType._all_fields_ = [('description', SharedLinkSettingsRemoveExpirationType.description.validator)]

SharedLinkSettingsRemovePasswordDetails.shared_content_access_level.validator = sharing.AccessLevel_validator
SharedLinkSettingsRemovePasswordDetails.shared_content_link.validator = bv.Nullable(bv.String())
SharedLinkSettingsRemovePasswordDetails._all_field_names_ = set([
    'shared_content_access_level',
    'shared_content_link',
])
SharedLinkSettingsRemovePasswordDetails._all_fields_ = [
    ('shared_content_access_level', SharedLinkSettingsRemovePasswordDetails.shared_content_access_level.validator),
    ('shared_content_link', SharedLinkSettingsRemovePasswordDetails.shared_content_link.validator),
]

SharedLinkSettingsRemovePasswordType.description.validator = bv.String()
SharedLinkSettingsRemovePasswordType._all_field_names_ = set(['description'])
SharedLinkSettingsRemovePasswordType._all_fields_ = [('description', SharedLinkSettingsRemovePasswordType.description.validator)]

SharedLinkShareDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedLinkShareDetails.external_users.validator = bv.Nullable(bv.List(ExternalUserLogInfo_validator))
SharedLinkShareDetails._all_field_names_ = set([
    'shared_link_owner',
    'external_users',
])
SharedLinkShareDetails._all_fields_ = [
    ('shared_link_owner', SharedLinkShareDetails.shared_link_owner.validator),
    ('external_users', SharedLinkShareDetails.external_users.validator),
]

SharedLinkShareType.description.validator = bv.String()
SharedLinkShareType._all_field_names_ = set(['description'])
SharedLinkShareType._all_fields_ = [('description', SharedLinkShareType.description.validator)]

SharedLinkViewDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
SharedLinkViewDetails._all_field_names_ = set(['shared_link_owner'])
SharedLinkViewDetails._all_fields_ = [('shared_link_owner', SharedLinkViewDetails.shared_link_owner.validator)]

SharedLinkViewType.description.validator = bv.String()
SharedLinkViewType._all_field_names_ = set(['description'])
SharedLinkViewType._all_fields_ = [('description', SharedLinkViewType.description.validator)]

SharedLinkVisibility._no_one_validator = bv.Void()
SharedLinkVisibility._password_validator = bv.Void()
SharedLinkVisibility._public_validator = bv.Void()
SharedLinkVisibility._team_only_validator = bv.Void()
SharedLinkVisibility._other_validator = bv.Void()
SharedLinkVisibility._tagmap = {
    'no_one': SharedLinkVisibility._no_one_validator,
    'password': SharedLinkVisibility._password_validator,
    'public': SharedLinkVisibility._public_validator,
    'team_only': SharedLinkVisibility._team_only_validator,
    'other': SharedLinkVisibility._other_validator,
}

SharedLinkVisibility.no_one = SharedLinkVisibility('no_one')
SharedLinkVisibility.password = SharedLinkVisibility('password')
SharedLinkVisibility.public = SharedLinkVisibility('public')
SharedLinkVisibility.team_only = SharedLinkVisibility('team_only')
SharedLinkVisibility.other = SharedLinkVisibility('other')

SharedNoteOpenedDetails._all_field_names_ = set([])
SharedNoteOpenedDetails._all_fields_ = []

SharedNoteOpenedType.description.validator = bv.String()
SharedNoteOpenedType._all_field_names_ = set(['description'])
SharedNoteOpenedType._all_fields_ = [('description', SharedNoteOpenedType.description.validator)]

SharingChangeFolderJoinPolicyDetails.new_value.validator = SharingFolderJoinPolicy_validator
SharingChangeFolderJoinPolicyDetails.previous_value.validator = bv.Nullable(SharingFolderJoinPolicy_validator)
SharingChangeFolderJoinPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharingChangeFolderJoinPolicyDetails._all_fields_ = [
    ('new_value', SharingChangeFolderJoinPolicyDetails.new_value.validator),
    ('previous_value', SharingChangeFolderJoinPolicyDetails.previous_value.validator),
]

SharingChangeFolderJoinPolicyType.description.validator = bv.String()
SharingChangeFolderJoinPolicyType._all_field_names_ = set(['description'])
SharingChangeFolderJoinPolicyType._all_fields_ = [('description', SharingChangeFolderJoinPolicyType.description.validator)]

SharingChangeLinkAllowChangeExpirationPolicyDetails.new_value.validator = EnforceLinkPasswordPolicy_validator
SharingChangeLinkAllowChangeExpirationPolicyDetails.previous_value.validator = bv.Nullable(EnforceLinkPasswordPolicy_validator)
SharingChangeLinkAllowChangeExpirationPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharingChangeLinkAllowChangeExpirationPolicyDetails._all_fields_ = [
    ('new_value', SharingChangeLinkAllowChangeExpirationPolicyDetails.new_value.validator),
    ('previous_value', SharingChangeLinkAllowChangeExpirationPolicyDetails.previous_value.validator),
]

SharingChangeLinkAllowChangeExpirationPolicyType.description.validator = bv.String()
SharingChangeLinkAllowChangeExpirationPolicyType._all_field_names_ = set(['description'])
SharingChangeLinkAllowChangeExpirationPolicyType._all_fields_ = [('description', SharingChangeLinkAllowChangeExpirationPolicyType.description.validator)]

SharingChangeLinkDefaultExpirationPolicyDetails.new_value.validator = DefaultLinkExpirationDaysPolicy_validator
SharingChangeLinkDefaultExpirationPolicyDetails.previous_value.validator = bv.Nullable(DefaultLinkExpirationDaysPolicy_validator)
SharingChangeLinkDefaultExpirationPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharingChangeLinkDefaultExpirationPolicyDetails._all_fields_ = [
    ('new_value', SharingChangeLinkDefaultExpirationPolicyDetails.new_value.validator),
    ('previous_value', SharingChangeLinkDefaultExpirationPolicyDetails.previous_value.validator),
]

SharingChangeLinkDefaultExpirationPolicyType.description.validator = bv.String()
SharingChangeLinkDefaultExpirationPolicyType._all_field_names_ = set(['description'])
SharingChangeLinkDefaultExpirationPolicyType._all_fields_ = [('description', SharingChangeLinkDefaultExpirationPolicyType.description.validator)]

SharingChangeLinkEnforcePasswordPolicyDetails.new_value.validator = ChangeLinkExpirationPolicy_validator
SharingChangeLinkEnforcePasswordPolicyDetails.previous_value.validator = bv.Nullable(ChangeLinkExpirationPolicy_validator)
SharingChangeLinkEnforcePasswordPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharingChangeLinkEnforcePasswordPolicyDetails._all_fields_ = [
    ('new_value', SharingChangeLinkEnforcePasswordPolicyDetails.new_value.validator),
    ('previous_value', SharingChangeLinkEnforcePasswordPolicyDetails.previous_value.validator),
]

SharingChangeLinkEnforcePasswordPolicyType.description.validator = bv.String()
SharingChangeLinkEnforcePasswordPolicyType._all_field_names_ = set(['description'])
SharingChangeLinkEnforcePasswordPolicyType._all_fields_ = [('description', SharingChangeLinkEnforcePasswordPolicyType.description.validator)]

SharingChangeLinkPolicyDetails.new_value.validator = SharingLinkPolicy_validator
SharingChangeLinkPolicyDetails.previous_value.validator = bv.Nullable(SharingLinkPolicy_validator)
SharingChangeLinkPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharingChangeLinkPolicyDetails._all_fields_ = [
    ('new_value', SharingChangeLinkPolicyDetails.new_value.validator),
    ('previous_value', SharingChangeLinkPolicyDetails.previous_value.validator),
]

SharingChangeLinkPolicyType.description.validator = bv.String()
SharingChangeLinkPolicyType._all_field_names_ = set(['description'])
SharingChangeLinkPolicyType._all_fields_ = [('description', SharingChangeLinkPolicyType.description.validator)]

SharingChangeMemberPolicyDetails.new_value.validator = SharingMemberPolicy_validator
SharingChangeMemberPolicyDetails.previous_value.validator = bv.Nullable(SharingMemberPolicy_validator)
SharingChangeMemberPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SharingChangeMemberPolicyDetails._all_fields_ = [
    ('new_value', SharingChangeMemberPolicyDetails.new_value.validator),
    ('previous_value', SharingChangeMemberPolicyDetails.previous_value.validator),
]

SharingChangeMemberPolicyType.description.validator = bv.String()
SharingChangeMemberPolicyType._all_field_names_ = set(['description'])
SharingChangeMemberPolicyType._all_fields_ = [('description', SharingChangeMemberPolicyType.description.validator)]

SharingFolderJoinPolicy._from_anyone_validator = bv.Void()
SharingFolderJoinPolicy._from_team_only_validator = bv.Void()
SharingFolderJoinPolicy._other_validator = bv.Void()
SharingFolderJoinPolicy._tagmap = {
    'from_anyone': SharingFolderJoinPolicy._from_anyone_validator,
    'from_team_only': SharingFolderJoinPolicy._from_team_only_validator,
    'other': SharingFolderJoinPolicy._other_validator,
}

SharingFolderJoinPolicy.from_anyone = SharingFolderJoinPolicy('from_anyone')
SharingFolderJoinPolicy.from_team_only = SharingFolderJoinPolicy('from_team_only')
SharingFolderJoinPolicy.other = SharingFolderJoinPolicy('other')

SharingLinkPolicy._default_no_one_validator = bv.Void()
SharingLinkPolicy._default_private_validator = bv.Void()
SharingLinkPolicy._default_public_validator = bv.Void()
SharingLinkPolicy._only_private_validator = bv.Void()
SharingLinkPolicy._other_validator = bv.Void()
SharingLinkPolicy._tagmap = {
    'default_no_one': SharingLinkPolicy._default_no_one_validator,
    'default_private': SharingLinkPolicy._default_private_validator,
    'default_public': SharingLinkPolicy._default_public_validator,
    'only_private': SharingLinkPolicy._only_private_validator,
    'other': SharingLinkPolicy._other_validator,
}

SharingLinkPolicy.default_no_one = SharingLinkPolicy('default_no_one')
SharingLinkPolicy.default_private = SharingLinkPolicy('default_private')
SharingLinkPolicy.default_public = SharingLinkPolicy('default_public')
SharingLinkPolicy.only_private = SharingLinkPolicy('only_private')
SharingLinkPolicy.other = SharingLinkPolicy('other')

SharingMemberPolicy._allow_validator = bv.Void()
SharingMemberPolicy._forbid_validator = bv.Void()
SharingMemberPolicy._forbid_with_exclusions_validator = bv.Void()
SharingMemberPolicy._other_validator = bv.Void()
SharingMemberPolicy._tagmap = {
    'allow': SharingMemberPolicy._allow_validator,
    'forbid': SharingMemberPolicy._forbid_validator,
    'forbid_with_exclusions': SharingMemberPolicy._forbid_with_exclusions_validator,
    'other': SharingMemberPolicy._other_validator,
}

SharingMemberPolicy.allow = SharingMemberPolicy('allow')
SharingMemberPolicy.forbid = SharingMemberPolicy('forbid')
SharingMemberPolicy.forbid_with_exclusions = SharingMemberPolicy('forbid_with_exclusions')
SharingMemberPolicy.other = SharingMemberPolicy('other')

ShmodelDisableDownloadsDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
ShmodelDisableDownloadsDetails._all_field_names_ = set(['shared_link_owner'])
ShmodelDisableDownloadsDetails._all_fields_ = [('shared_link_owner', ShmodelDisableDownloadsDetails.shared_link_owner.validator)]

ShmodelDisableDownloadsType.description.validator = bv.String()
ShmodelDisableDownloadsType._all_field_names_ = set(['description'])
ShmodelDisableDownloadsType._all_fields_ = [('description', ShmodelDisableDownloadsType.description.validator)]

ShmodelEnableDownloadsDetails.shared_link_owner.validator = bv.Nullable(UserLogInfo_validator)
ShmodelEnableDownloadsDetails._all_field_names_ = set(['shared_link_owner'])
ShmodelEnableDownloadsDetails._all_fields_ = [('shared_link_owner', ShmodelEnableDownloadsDetails.shared_link_owner.validator)]

ShmodelEnableDownloadsType.description.validator = bv.String()
ShmodelEnableDownloadsType._all_field_names_ = set(['description'])
ShmodelEnableDownloadsType._all_fields_ = [('description', ShmodelEnableDownloadsType.description.validator)]

ShmodelGroupShareDetails._all_field_names_ = set([])
ShmodelGroupShareDetails._all_fields_ = []

ShmodelGroupShareType.description.validator = bv.String()
ShmodelGroupShareType._all_field_names_ = set(['description'])
ShmodelGroupShareType._all_fields_ = [('description', ShmodelGroupShareType.description.validator)]

ShowcaseAccessGrantedDetails.event_uuid.validator = bv.String()
ShowcaseAccessGrantedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseAccessGrantedDetails._all_fields_ = [('event_uuid', ShowcaseAccessGrantedDetails.event_uuid.validator)]

ShowcaseAccessGrantedType.description.validator = bv.String()
ShowcaseAccessGrantedType._all_field_names_ = set(['description'])
ShowcaseAccessGrantedType._all_fields_ = [('description', ShowcaseAccessGrantedType.description.validator)]

ShowcaseAddMemberDetails.event_uuid.validator = bv.String()
ShowcaseAddMemberDetails._all_field_names_ = set(['event_uuid'])
ShowcaseAddMemberDetails._all_fields_ = [('event_uuid', ShowcaseAddMemberDetails.event_uuid.validator)]

ShowcaseAddMemberType.description.validator = bv.String()
ShowcaseAddMemberType._all_field_names_ = set(['description'])
ShowcaseAddMemberType._all_fields_ = [('description', ShowcaseAddMemberType.description.validator)]

ShowcaseArchivedDetails.event_uuid.validator = bv.String()
ShowcaseArchivedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseArchivedDetails._all_fields_ = [('event_uuid', ShowcaseArchivedDetails.event_uuid.validator)]

ShowcaseArchivedType.description.validator = bv.String()
ShowcaseArchivedType._all_field_names_ = set(['description'])
ShowcaseArchivedType._all_fields_ = [('description', ShowcaseArchivedType.description.validator)]

ShowcaseChangeDownloadPolicyDetails.new_value.validator = ShowcaseDownloadPolicy_validator
ShowcaseChangeDownloadPolicyDetails.previous_value.validator = ShowcaseDownloadPolicy_validator
ShowcaseChangeDownloadPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ShowcaseChangeDownloadPolicyDetails._all_fields_ = [
    ('new_value', ShowcaseChangeDownloadPolicyDetails.new_value.validator),
    ('previous_value', ShowcaseChangeDownloadPolicyDetails.previous_value.validator),
]

ShowcaseChangeDownloadPolicyType.description.validator = bv.String()
ShowcaseChangeDownloadPolicyType._all_field_names_ = set(['description'])
ShowcaseChangeDownloadPolicyType._all_fields_ = [('description', ShowcaseChangeDownloadPolicyType.description.validator)]

ShowcaseChangeEnabledPolicyDetails.new_value.validator = ShowcaseEnabledPolicy_validator
ShowcaseChangeEnabledPolicyDetails.previous_value.validator = ShowcaseEnabledPolicy_validator
ShowcaseChangeEnabledPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ShowcaseChangeEnabledPolicyDetails._all_fields_ = [
    ('new_value', ShowcaseChangeEnabledPolicyDetails.new_value.validator),
    ('previous_value', ShowcaseChangeEnabledPolicyDetails.previous_value.validator),
]

ShowcaseChangeEnabledPolicyType.description.validator = bv.String()
ShowcaseChangeEnabledPolicyType._all_field_names_ = set(['description'])
ShowcaseChangeEnabledPolicyType._all_fields_ = [('description', ShowcaseChangeEnabledPolicyType.description.validator)]

ShowcaseChangeExternalSharingPolicyDetails.new_value.validator = ShowcaseExternalSharingPolicy_validator
ShowcaseChangeExternalSharingPolicyDetails.previous_value.validator = ShowcaseExternalSharingPolicy_validator
ShowcaseChangeExternalSharingPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
ShowcaseChangeExternalSharingPolicyDetails._all_fields_ = [
    ('new_value', ShowcaseChangeExternalSharingPolicyDetails.new_value.validator),
    ('previous_value', ShowcaseChangeExternalSharingPolicyDetails.previous_value.validator),
]

ShowcaseChangeExternalSharingPolicyType.description.validator = bv.String()
ShowcaseChangeExternalSharingPolicyType._all_field_names_ = set(['description'])
ShowcaseChangeExternalSharingPolicyType._all_fields_ = [('description', ShowcaseChangeExternalSharingPolicyType.description.validator)]

ShowcaseCreatedDetails.event_uuid.validator = bv.String()
ShowcaseCreatedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseCreatedDetails._all_fields_ = [('event_uuid', ShowcaseCreatedDetails.event_uuid.validator)]

ShowcaseCreatedType.description.validator = bv.String()
ShowcaseCreatedType._all_field_names_ = set(['description'])
ShowcaseCreatedType._all_fields_ = [('description', ShowcaseCreatedType.description.validator)]

ShowcaseDeleteCommentDetails.event_uuid.validator = bv.String()
ShowcaseDeleteCommentDetails.comment_text.validator = bv.Nullable(bv.String())
ShowcaseDeleteCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
ShowcaseDeleteCommentDetails._all_fields_ = [
    ('event_uuid', ShowcaseDeleteCommentDetails.event_uuid.validator),
    ('comment_text', ShowcaseDeleteCommentDetails.comment_text.validator),
]

ShowcaseDeleteCommentType.description.validator = bv.String()
ShowcaseDeleteCommentType._all_field_names_ = set(['description'])
ShowcaseDeleteCommentType._all_fields_ = [('description', ShowcaseDeleteCommentType.description.validator)]

ShowcaseDocumentLogInfo.showcase_id.validator = bv.String()
ShowcaseDocumentLogInfo.showcase_title.validator = bv.String()
ShowcaseDocumentLogInfo._all_field_names_ = set([
    'showcase_id',
    'showcase_title',
])
ShowcaseDocumentLogInfo._all_fields_ = [
    ('showcase_id', ShowcaseDocumentLogInfo.showcase_id.validator),
    ('showcase_title', ShowcaseDocumentLogInfo.showcase_title.validator),
]

ShowcaseDownloadPolicy._disabled_validator = bv.Void()
ShowcaseDownloadPolicy._enabled_validator = bv.Void()
ShowcaseDownloadPolicy._other_validator = bv.Void()
ShowcaseDownloadPolicy._tagmap = {
    'disabled': ShowcaseDownloadPolicy._disabled_validator,
    'enabled': ShowcaseDownloadPolicy._enabled_validator,
    'other': ShowcaseDownloadPolicy._other_validator,
}

ShowcaseDownloadPolicy.disabled = ShowcaseDownloadPolicy('disabled')
ShowcaseDownloadPolicy.enabled = ShowcaseDownloadPolicy('enabled')
ShowcaseDownloadPolicy.other = ShowcaseDownloadPolicy('other')

ShowcaseEditCommentDetails.event_uuid.validator = bv.String()
ShowcaseEditCommentDetails.comment_text.validator = bv.Nullable(bv.String())
ShowcaseEditCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
ShowcaseEditCommentDetails._all_fields_ = [
    ('event_uuid', ShowcaseEditCommentDetails.event_uuid.validator),
    ('comment_text', ShowcaseEditCommentDetails.comment_text.validator),
]

ShowcaseEditCommentType.description.validator = bv.String()
ShowcaseEditCommentType._all_field_names_ = set(['description'])
ShowcaseEditCommentType._all_fields_ = [('description', ShowcaseEditCommentType.description.validator)]

ShowcaseEditedDetails.event_uuid.validator = bv.String()
ShowcaseEditedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseEditedDetails._all_fields_ = [('event_uuid', ShowcaseEditedDetails.event_uuid.validator)]

ShowcaseEditedType.description.validator = bv.String()
ShowcaseEditedType._all_field_names_ = set(['description'])
ShowcaseEditedType._all_fields_ = [('description', ShowcaseEditedType.description.validator)]

ShowcaseEnabledPolicy._disabled_validator = bv.Void()
ShowcaseEnabledPolicy._enabled_validator = bv.Void()
ShowcaseEnabledPolicy._other_validator = bv.Void()
ShowcaseEnabledPolicy._tagmap = {
    'disabled': ShowcaseEnabledPolicy._disabled_validator,
    'enabled': ShowcaseEnabledPolicy._enabled_validator,
    'other': ShowcaseEnabledPolicy._other_validator,
}

ShowcaseEnabledPolicy.disabled = ShowcaseEnabledPolicy('disabled')
ShowcaseEnabledPolicy.enabled = ShowcaseEnabledPolicy('enabled')
ShowcaseEnabledPolicy.other = ShowcaseEnabledPolicy('other')

ShowcaseExternalSharingPolicy._disabled_validator = bv.Void()
ShowcaseExternalSharingPolicy._enabled_validator = bv.Void()
ShowcaseExternalSharingPolicy._other_validator = bv.Void()
ShowcaseExternalSharingPolicy._tagmap = {
    'disabled': ShowcaseExternalSharingPolicy._disabled_validator,
    'enabled': ShowcaseExternalSharingPolicy._enabled_validator,
    'other': ShowcaseExternalSharingPolicy._other_validator,
}

ShowcaseExternalSharingPolicy.disabled = ShowcaseExternalSharingPolicy('disabled')
ShowcaseExternalSharingPolicy.enabled = ShowcaseExternalSharingPolicy('enabled')
ShowcaseExternalSharingPolicy.other = ShowcaseExternalSharingPolicy('other')

ShowcaseFileAddedDetails.event_uuid.validator = bv.String()
ShowcaseFileAddedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseFileAddedDetails._all_fields_ = [('event_uuid', ShowcaseFileAddedDetails.event_uuid.validator)]

ShowcaseFileAddedType.description.validator = bv.String()
ShowcaseFileAddedType._all_field_names_ = set(['description'])
ShowcaseFileAddedType._all_fields_ = [('description', ShowcaseFileAddedType.description.validator)]

ShowcaseFileDownloadDetails.event_uuid.validator = bv.String()
ShowcaseFileDownloadDetails.download_type.validator = bv.String()
ShowcaseFileDownloadDetails._all_field_names_ = set([
    'event_uuid',
    'download_type',
])
ShowcaseFileDownloadDetails._all_fields_ = [
    ('event_uuid', ShowcaseFileDownloadDetails.event_uuid.validator),
    ('download_type', ShowcaseFileDownloadDetails.download_type.validator),
]

ShowcaseFileDownloadType.description.validator = bv.String()
ShowcaseFileDownloadType._all_field_names_ = set(['description'])
ShowcaseFileDownloadType._all_fields_ = [('description', ShowcaseFileDownloadType.description.validator)]

ShowcaseFileRemovedDetails.event_uuid.validator = bv.String()
ShowcaseFileRemovedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseFileRemovedDetails._all_fields_ = [('event_uuid', ShowcaseFileRemovedDetails.event_uuid.validator)]

ShowcaseFileRemovedType.description.validator = bv.String()
ShowcaseFileRemovedType._all_field_names_ = set(['description'])
ShowcaseFileRemovedType._all_fields_ = [('description', ShowcaseFileRemovedType.description.validator)]

ShowcaseFileViewDetails.event_uuid.validator = bv.String()
ShowcaseFileViewDetails._all_field_names_ = set(['event_uuid'])
ShowcaseFileViewDetails._all_fields_ = [('event_uuid', ShowcaseFileViewDetails.event_uuid.validator)]

ShowcaseFileViewType.description.validator = bv.String()
ShowcaseFileViewType._all_field_names_ = set(['description'])
ShowcaseFileViewType._all_fields_ = [('description', ShowcaseFileViewType.description.validator)]

ShowcasePermanentlyDeletedDetails.event_uuid.validator = bv.String()
ShowcasePermanentlyDeletedDetails._all_field_names_ = set(['event_uuid'])
ShowcasePermanentlyDeletedDetails._all_fields_ = [('event_uuid', ShowcasePermanentlyDeletedDetails.event_uuid.validator)]

ShowcasePermanentlyDeletedType.description.validator = bv.String()
ShowcasePermanentlyDeletedType._all_field_names_ = set(['description'])
ShowcasePermanentlyDeletedType._all_fields_ = [('description', ShowcasePermanentlyDeletedType.description.validator)]

ShowcasePostCommentDetails.event_uuid.validator = bv.String()
ShowcasePostCommentDetails.comment_text.validator = bv.Nullable(bv.String())
ShowcasePostCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
ShowcasePostCommentDetails._all_fields_ = [
    ('event_uuid', ShowcasePostCommentDetails.event_uuid.validator),
    ('comment_text', ShowcasePostCommentDetails.comment_text.validator),
]

ShowcasePostCommentType.description.validator = bv.String()
ShowcasePostCommentType._all_field_names_ = set(['description'])
ShowcasePostCommentType._all_fields_ = [('description', ShowcasePostCommentType.description.validator)]

ShowcaseRemoveMemberDetails.event_uuid.validator = bv.String()
ShowcaseRemoveMemberDetails._all_field_names_ = set(['event_uuid'])
ShowcaseRemoveMemberDetails._all_fields_ = [('event_uuid', ShowcaseRemoveMemberDetails.event_uuid.validator)]

ShowcaseRemoveMemberType.description.validator = bv.String()
ShowcaseRemoveMemberType._all_field_names_ = set(['description'])
ShowcaseRemoveMemberType._all_fields_ = [('description', ShowcaseRemoveMemberType.description.validator)]

ShowcaseRenamedDetails.event_uuid.validator = bv.String()
ShowcaseRenamedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseRenamedDetails._all_fields_ = [('event_uuid', ShowcaseRenamedDetails.event_uuid.validator)]

ShowcaseRenamedType.description.validator = bv.String()
ShowcaseRenamedType._all_field_names_ = set(['description'])
ShowcaseRenamedType._all_fields_ = [('description', ShowcaseRenamedType.description.validator)]

ShowcaseRequestAccessDetails.event_uuid.validator = bv.String()
ShowcaseRequestAccessDetails._all_field_names_ = set(['event_uuid'])
ShowcaseRequestAccessDetails._all_fields_ = [('event_uuid', ShowcaseRequestAccessDetails.event_uuid.validator)]

ShowcaseRequestAccessType.description.validator = bv.String()
ShowcaseRequestAccessType._all_field_names_ = set(['description'])
ShowcaseRequestAccessType._all_fields_ = [('description', ShowcaseRequestAccessType.description.validator)]

ShowcaseResolveCommentDetails.event_uuid.validator = bv.String()
ShowcaseResolveCommentDetails.comment_text.validator = bv.Nullable(bv.String())
ShowcaseResolveCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
ShowcaseResolveCommentDetails._all_fields_ = [
    ('event_uuid', ShowcaseResolveCommentDetails.event_uuid.validator),
    ('comment_text', ShowcaseResolveCommentDetails.comment_text.validator),
]

ShowcaseResolveCommentType.description.validator = bv.String()
ShowcaseResolveCommentType._all_field_names_ = set(['description'])
ShowcaseResolveCommentType._all_fields_ = [('description', ShowcaseResolveCommentType.description.validator)]

ShowcaseRestoredDetails.event_uuid.validator = bv.String()
ShowcaseRestoredDetails._all_field_names_ = set(['event_uuid'])
ShowcaseRestoredDetails._all_fields_ = [('event_uuid', ShowcaseRestoredDetails.event_uuid.validator)]

ShowcaseRestoredType.description.validator = bv.String()
ShowcaseRestoredType._all_field_names_ = set(['description'])
ShowcaseRestoredType._all_fields_ = [('description', ShowcaseRestoredType.description.validator)]

ShowcaseTrashedDeprecatedDetails.event_uuid.validator = bv.String()
ShowcaseTrashedDeprecatedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseTrashedDeprecatedDetails._all_fields_ = [('event_uuid', ShowcaseTrashedDeprecatedDetails.event_uuid.validator)]

ShowcaseTrashedDeprecatedType.description.validator = bv.String()
ShowcaseTrashedDeprecatedType._all_field_names_ = set(['description'])
ShowcaseTrashedDeprecatedType._all_fields_ = [('description', ShowcaseTrashedDeprecatedType.description.validator)]

ShowcaseTrashedDetails.event_uuid.validator = bv.String()
ShowcaseTrashedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseTrashedDetails._all_fields_ = [('event_uuid', ShowcaseTrashedDetails.event_uuid.validator)]

ShowcaseTrashedType.description.validator = bv.String()
ShowcaseTrashedType._all_field_names_ = set(['description'])
ShowcaseTrashedType._all_fields_ = [('description', ShowcaseTrashedType.description.validator)]

ShowcaseUnresolveCommentDetails.event_uuid.validator = bv.String()
ShowcaseUnresolveCommentDetails.comment_text.validator = bv.Nullable(bv.String())
ShowcaseUnresolveCommentDetails._all_field_names_ = set([
    'event_uuid',
    'comment_text',
])
ShowcaseUnresolveCommentDetails._all_fields_ = [
    ('event_uuid', ShowcaseUnresolveCommentDetails.event_uuid.validator),
    ('comment_text', ShowcaseUnresolveCommentDetails.comment_text.validator),
]

ShowcaseUnresolveCommentType.description.validator = bv.String()
ShowcaseUnresolveCommentType._all_field_names_ = set(['description'])
ShowcaseUnresolveCommentType._all_fields_ = [('description', ShowcaseUnresolveCommentType.description.validator)]

ShowcaseUntrashedDeprecatedDetails.event_uuid.validator = bv.String()
ShowcaseUntrashedDeprecatedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseUntrashedDeprecatedDetails._all_fields_ = [('event_uuid', ShowcaseUntrashedDeprecatedDetails.event_uuid.validator)]

ShowcaseUntrashedDeprecatedType.description.validator = bv.String()
ShowcaseUntrashedDeprecatedType._all_field_names_ = set(['description'])
ShowcaseUntrashedDeprecatedType._all_fields_ = [('description', ShowcaseUntrashedDeprecatedType.description.validator)]

ShowcaseUntrashedDetails.event_uuid.validator = bv.String()
ShowcaseUntrashedDetails._all_field_names_ = set(['event_uuid'])
ShowcaseUntrashedDetails._all_fields_ = [('event_uuid', ShowcaseUntrashedDetails.event_uuid.validator)]

ShowcaseUntrashedType.description.validator = bv.String()
ShowcaseUntrashedType._all_field_names_ = set(['description'])
ShowcaseUntrashedType._all_fields_ = [('description', ShowcaseUntrashedType.description.validator)]

ShowcaseViewDetails.event_uuid.validator = bv.String()
ShowcaseViewDetails._all_field_names_ = set(['event_uuid'])
ShowcaseViewDetails._all_fields_ = [('event_uuid', ShowcaseViewDetails.event_uuid.validator)]

ShowcaseViewType.description.validator = bv.String()
ShowcaseViewType._all_field_names_ = set(['description'])
ShowcaseViewType._all_fields_ = [('description', ShowcaseViewType.description.validator)]

SignInAsSessionEndDetails._all_field_names_ = set([])
SignInAsSessionEndDetails._all_fields_ = []

SignInAsSessionEndType.description.validator = bv.String()
SignInAsSessionEndType._all_field_names_ = set(['description'])
SignInAsSessionEndType._all_fields_ = [('description', SignInAsSessionEndType.description.validator)]

SignInAsSessionStartDetails._all_field_names_ = set([])
SignInAsSessionStartDetails._all_fields_ = []

SignInAsSessionStartType.description.validator = bv.String()
SignInAsSessionStartType._all_field_names_ = set(['description'])
SignInAsSessionStartType._all_fields_ = [('description', SignInAsSessionStartType.description.validator)]

SmartSyncChangePolicyDetails.new_value.validator = bv.Nullable(team_policies.SmartSyncPolicy_validator)
SmartSyncChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.SmartSyncPolicy_validator)
SmartSyncChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SmartSyncChangePolicyDetails._all_fields_ = [
    ('new_value', SmartSyncChangePolicyDetails.new_value.validator),
    ('previous_value', SmartSyncChangePolicyDetails.previous_value.validator),
]

SmartSyncChangePolicyType.description.validator = bv.String()
SmartSyncChangePolicyType._all_field_names_ = set(['description'])
SmartSyncChangePolicyType._all_fields_ = [('description', SmartSyncChangePolicyType.description.validator)]

SmartSyncCreateAdminPrivilegeReportDetails._all_field_names_ = set([])
SmartSyncCreateAdminPrivilegeReportDetails._all_fields_ = []

SmartSyncCreateAdminPrivilegeReportType.description.validator = bv.String()
SmartSyncCreateAdminPrivilegeReportType._all_field_names_ = set(['description'])
SmartSyncCreateAdminPrivilegeReportType._all_fields_ = [('description', SmartSyncCreateAdminPrivilegeReportType.description.validator)]

SmartSyncNotOptOutDetails.previous_value.validator = SmartSyncOptOutPolicy_validator
SmartSyncNotOptOutDetails.new_value.validator = SmartSyncOptOutPolicy_validator
SmartSyncNotOptOutDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SmartSyncNotOptOutDetails._all_fields_ = [
    ('previous_value', SmartSyncNotOptOutDetails.previous_value.validator),
    ('new_value', SmartSyncNotOptOutDetails.new_value.validator),
]

SmartSyncNotOptOutType.description.validator = bv.String()
SmartSyncNotOptOutType._all_field_names_ = set(['description'])
SmartSyncNotOptOutType._all_fields_ = [('description', SmartSyncNotOptOutType.description.validator)]

SmartSyncOptOutDetails.previous_value.validator = SmartSyncOptOutPolicy_validator
SmartSyncOptOutDetails.new_value.validator = SmartSyncOptOutPolicy_validator
SmartSyncOptOutDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SmartSyncOptOutDetails._all_fields_ = [
    ('previous_value', SmartSyncOptOutDetails.previous_value.validator),
    ('new_value', SmartSyncOptOutDetails.new_value.validator),
]

SmartSyncOptOutPolicy._default_validator = bv.Void()
SmartSyncOptOutPolicy._opted_out_validator = bv.Void()
SmartSyncOptOutPolicy._other_validator = bv.Void()
SmartSyncOptOutPolicy._tagmap = {
    'default': SmartSyncOptOutPolicy._default_validator,
    'opted_out': SmartSyncOptOutPolicy._opted_out_validator,
    'other': SmartSyncOptOutPolicy._other_validator,
}

SmartSyncOptOutPolicy.default = SmartSyncOptOutPolicy('default')
SmartSyncOptOutPolicy.opted_out = SmartSyncOptOutPolicy('opted_out')
SmartSyncOptOutPolicy.other = SmartSyncOptOutPolicy('other')

SmartSyncOptOutType.description.validator = bv.String()
SmartSyncOptOutType._all_field_names_ = set(['description'])
SmartSyncOptOutType._all_fields_ = [('description', SmartSyncOptOutType.description.validator)]

SmarterSmartSyncPolicyChangedDetails.previous_value.validator = team_policies.SmarterSmartSyncPolicyState_validator
SmarterSmartSyncPolicyChangedDetails.new_value.validator = team_policies.SmarterSmartSyncPolicyState_validator
SmarterSmartSyncPolicyChangedDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SmarterSmartSyncPolicyChangedDetails._all_fields_ = [
    ('previous_value', SmarterSmartSyncPolicyChangedDetails.previous_value.validator),
    ('new_value', SmarterSmartSyncPolicyChangedDetails.new_value.validator),
]

SmarterSmartSyncPolicyChangedType.description.validator = bv.String()
SmarterSmartSyncPolicyChangedType._all_field_names_ = set(['description'])
SmarterSmartSyncPolicyChangedType._all_fields_ = [('description', SmarterSmartSyncPolicyChangedType.description.validator)]

SpaceCapsType._hard_validator = bv.Void()
SpaceCapsType._off_validator = bv.Void()
SpaceCapsType._soft_validator = bv.Void()
SpaceCapsType._other_validator = bv.Void()
SpaceCapsType._tagmap = {
    'hard': SpaceCapsType._hard_validator,
    'off': SpaceCapsType._off_validator,
    'soft': SpaceCapsType._soft_validator,
    'other': SpaceCapsType._other_validator,
}

SpaceCapsType.hard = SpaceCapsType('hard')
SpaceCapsType.off = SpaceCapsType('off')
SpaceCapsType.soft = SpaceCapsType('soft')
SpaceCapsType.other = SpaceCapsType('other')

SpaceLimitsStatus._near_quota_validator = bv.Void()
SpaceLimitsStatus._over_quota_validator = bv.Void()
SpaceLimitsStatus._within_quota_validator = bv.Void()
SpaceLimitsStatus._other_validator = bv.Void()
SpaceLimitsStatus._tagmap = {
    'near_quota': SpaceLimitsStatus._near_quota_validator,
    'over_quota': SpaceLimitsStatus._over_quota_validator,
    'within_quota': SpaceLimitsStatus._within_quota_validator,
    'other': SpaceLimitsStatus._other_validator,
}

SpaceLimitsStatus.near_quota = SpaceLimitsStatus('near_quota')
SpaceLimitsStatus.over_quota = SpaceLimitsStatus('over_quota')
SpaceLimitsStatus.within_quota = SpaceLimitsStatus('within_quota')
SpaceLimitsStatus.other = SpaceLimitsStatus('other')

SsoAddCertDetails.certificate_details.validator = Certificate_validator
SsoAddCertDetails._all_field_names_ = set(['certificate_details'])
SsoAddCertDetails._all_fields_ = [('certificate_details', SsoAddCertDetails.certificate_details.validator)]

SsoAddCertType.description.validator = bv.String()
SsoAddCertType._all_field_names_ = set(['description'])
SsoAddCertType._all_fields_ = [('description', SsoAddCertType.description.validator)]

SsoAddLoginUrlDetails.new_value.validator = bv.String()
SsoAddLoginUrlDetails._all_field_names_ = set(['new_value'])
SsoAddLoginUrlDetails._all_fields_ = [('new_value', SsoAddLoginUrlDetails.new_value.validator)]

SsoAddLoginUrlType.description.validator = bv.String()
SsoAddLoginUrlType._all_field_names_ = set(['description'])
SsoAddLoginUrlType._all_fields_ = [('description', SsoAddLoginUrlType.description.validator)]

SsoAddLogoutUrlDetails.new_value.validator = bv.Nullable(bv.String())
SsoAddLogoutUrlDetails._all_field_names_ = set(['new_value'])
SsoAddLogoutUrlDetails._all_fields_ = [('new_value', SsoAddLogoutUrlDetails.new_value.validator)]

SsoAddLogoutUrlType.description.validator = bv.String()
SsoAddLogoutUrlType._all_field_names_ = set(['description'])
SsoAddLogoutUrlType._all_fields_ = [('description', SsoAddLogoutUrlType.description.validator)]

SsoChangeCertDetails.previous_certificate_details.validator = bv.Nullable(Certificate_validator)
SsoChangeCertDetails.new_certificate_details.validator = Certificate_validator
SsoChangeCertDetails._all_field_names_ = set([
    'previous_certificate_details',
    'new_certificate_details',
])
SsoChangeCertDetails._all_fields_ = [
    ('previous_certificate_details', SsoChangeCertDetails.previous_certificate_details.validator),
    ('new_certificate_details', SsoChangeCertDetails.new_certificate_details.validator),
]

SsoChangeCertType.description.validator = bv.String()
SsoChangeCertType._all_field_names_ = set(['description'])
SsoChangeCertType._all_fields_ = [('description', SsoChangeCertType.description.validator)]

SsoChangeLoginUrlDetails.previous_value.validator = bv.String()
SsoChangeLoginUrlDetails.new_value.validator = bv.String()
SsoChangeLoginUrlDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SsoChangeLoginUrlDetails._all_fields_ = [
    ('previous_value', SsoChangeLoginUrlDetails.previous_value.validator),
    ('new_value', SsoChangeLoginUrlDetails.new_value.validator),
]

SsoChangeLoginUrlType.description.validator = bv.String()
SsoChangeLoginUrlType._all_field_names_ = set(['description'])
SsoChangeLoginUrlType._all_fields_ = [('description', SsoChangeLoginUrlType.description.validator)]

SsoChangeLogoutUrlDetails.previous_value.validator = bv.Nullable(bv.String())
SsoChangeLogoutUrlDetails.new_value.validator = bv.Nullable(bv.String())
SsoChangeLogoutUrlDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SsoChangeLogoutUrlDetails._all_fields_ = [
    ('previous_value', SsoChangeLogoutUrlDetails.previous_value.validator),
    ('new_value', SsoChangeLogoutUrlDetails.new_value.validator),
]

SsoChangeLogoutUrlType.description.validator = bv.String()
SsoChangeLogoutUrlType._all_field_names_ = set(['description'])
SsoChangeLogoutUrlType._all_fields_ = [('description', SsoChangeLogoutUrlType.description.validator)]

SsoChangePolicyDetails.new_value.validator = team_policies.SsoPolicy_validator
SsoChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.SsoPolicy_validator)
SsoChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
SsoChangePolicyDetails._all_fields_ = [
    ('new_value', SsoChangePolicyDetails.new_value.validator),
    ('previous_value', SsoChangePolicyDetails.previous_value.validator),
]

SsoChangePolicyType.description.validator = bv.String()
SsoChangePolicyType._all_field_names_ = set(['description'])
SsoChangePolicyType._all_fields_ = [('description', SsoChangePolicyType.description.validator)]

SsoChangeSamlIdentityModeDetails.previous_value.validator = bv.Int64()
SsoChangeSamlIdentityModeDetails.new_value.validator = bv.Int64()
SsoChangeSamlIdentityModeDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
SsoChangeSamlIdentityModeDetails._all_fields_ = [
    ('previous_value', SsoChangeSamlIdentityModeDetails.previous_value.validator),
    ('new_value', SsoChangeSamlIdentityModeDetails.new_value.validator),
]

SsoChangeSamlIdentityModeType.description.validator = bv.String()
SsoChangeSamlIdentityModeType._all_field_names_ = set(['description'])
SsoChangeSamlIdentityModeType._all_fields_ = [('description', SsoChangeSamlIdentityModeType.description.validator)]

SsoErrorDetails.error_details.validator = FailureDetailsLogInfo_validator
SsoErrorDetails._all_field_names_ = set(['error_details'])
SsoErrorDetails._all_fields_ = [('error_details', SsoErrorDetails.error_details.validator)]

SsoErrorType.description.validator = bv.String()
SsoErrorType._all_field_names_ = set(['description'])
SsoErrorType._all_fields_ = [('description', SsoErrorType.description.validator)]

SsoRemoveCertDetails._all_field_names_ = set([])
SsoRemoveCertDetails._all_fields_ = []

SsoRemoveCertType.description.validator = bv.String()
SsoRemoveCertType._all_field_names_ = set(['description'])
SsoRemoveCertType._all_fields_ = [('description', SsoRemoveCertType.description.validator)]

SsoRemoveLoginUrlDetails.previous_value.validator = bv.String()
SsoRemoveLoginUrlDetails._all_field_names_ = set(['previous_value'])
SsoRemoveLoginUrlDetails._all_fields_ = [('previous_value', SsoRemoveLoginUrlDetails.previous_value.validator)]

SsoRemoveLoginUrlType.description.validator = bv.String()
SsoRemoveLoginUrlType._all_field_names_ = set(['description'])
SsoRemoveLoginUrlType._all_fields_ = [('description', SsoRemoveLoginUrlType.description.validator)]

SsoRemoveLogoutUrlDetails.previous_value.validator = bv.String()
SsoRemoveLogoutUrlDetails._all_field_names_ = set(['previous_value'])
SsoRemoveLogoutUrlDetails._all_fields_ = [('previous_value', SsoRemoveLogoutUrlDetails.previous_value.validator)]

SsoRemoveLogoutUrlType.description.validator = bv.String()
SsoRemoveLogoutUrlType._all_field_names_ = set(['description'])
SsoRemoveLogoutUrlType._all_fields_ = [('description', SsoRemoveLogoutUrlType.description.validator)]

StartedEnterpriseAdminSessionDetails.federation_extra_details.validator = FedExtraDetails_validator
StartedEnterpriseAdminSessionDetails._all_field_names_ = set(['federation_extra_details'])
StartedEnterpriseAdminSessionDetails._all_fields_ = [('federation_extra_details', StartedEnterpriseAdminSessionDetails.federation_extra_details.validator)]

StartedEnterpriseAdminSessionType.description.validator = bv.String()
StartedEnterpriseAdminSessionType._all_field_names_ = set(['description'])
StartedEnterpriseAdminSessionType._all_fields_ = [('description', StartedEnterpriseAdminSessionType.description.validator)]

TeamActivityCreateReportDetails.start_date.validator = common.DropboxTimestamp_validator
TeamActivityCreateReportDetails.end_date.validator = common.DropboxTimestamp_validator
TeamActivityCreateReportDetails._all_field_names_ = set([
    'start_date',
    'end_date',
])
TeamActivityCreateReportDetails._all_fields_ = [
    ('start_date', TeamActivityCreateReportDetails.start_date.validator),
    ('end_date', TeamActivityCreateReportDetails.end_date.validator),
]

TeamActivityCreateReportFailDetails.failure_reason.validator = team.TeamReportFailureReason_validator
TeamActivityCreateReportFailDetails._all_field_names_ = set(['failure_reason'])
TeamActivityCreateReportFailDetails._all_fields_ = [('failure_reason', TeamActivityCreateReportFailDetails.failure_reason.validator)]

TeamActivityCreateReportFailType.description.validator = bv.String()
TeamActivityCreateReportFailType._all_field_names_ = set(['description'])
TeamActivityCreateReportFailType._all_fields_ = [('description', TeamActivityCreateReportFailType.description.validator)]

TeamActivityCreateReportType.description.validator = bv.String()
TeamActivityCreateReportType._all_field_names_ = set(['description'])
TeamActivityCreateReportType._all_fields_ = [('description', TeamActivityCreateReportType.description.validator)]

TeamBrandingPolicy._disabled_validator = bv.Void()
TeamBrandingPolicy._enabled_validator = bv.Void()
TeamBrandingPolicy._other_validator = bv.Void()
TeamBrandingPolicy._tagmap = {
    'disabled': TeamBrandingPolicy._disabled_validator,
    'enabled': TeamBrandingPolicy._enabled_validator,
    'other': TeamBrandingPolicy._other_validator,
}

TeamBrandingPolicy.disabled = TeamBrandingPolicy('disabled')
TeamBrandingPolicy.enabled = TeamBrandingPolicy('enabled')
TeamBrandingPolicy.other = TeamBrandingPolicy('other')

TeamBrandingPolicyChangedDetails.new_value.validator = TeamBrandingPolicy_validator
TeamBrandingPolicyChangedDetails.previous_value.validator = TeamBrandingPolicy_validator
TeamBrandingPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TeamBrandingPolicyChangedDetails._all_fields_ = [
    ('new_value', TeamBrandingPolicyChangedDetails.new_value.validator),
    ('previous_value', TeamBrandingPolicyChangedDetails.previous_value.validator),
]

TeamBrandingPolicyChangedType.description.validator = bv.String()
TeamBrandingPolicyChangedType._all_field_names_ = set(['description'])
TeamBrandingPolicyChangedType._all_fields_ = [('description', TeamBrandingPolicyChangedType.description.validator)]

TeamDetails.team.validator = bv.String()
TeamDetails._all_field_names_ = set(['team'])
TeamDetails._all_fields_ = [('team', TeamDetails.team.validator)]

TeamEvent.timestamp.validator = common.DropboxTimestamp_validator
TeamEvent.event_category.validator = EventCategory_validator
TeamEvent.actor.validator = bv.Nullable(ActorLogInfo_validator)
TeamEvent.origin.validator = bv.Nullable(OriginLogInfo_validator)
TeamEvent.involve_non_team_member.validator = bv.Nullable(bv.Boolean())
TeamEvent.context.validator = bv.Nullable(ContextLogInfo_validator)
TeamEvent.participants.validator = bv.Nullable(bv.List(ParticipantLogInfo_validator))
TeamEvent.assets.validator = bv.Nullable(bv.List(AssetLogInfo_validator))
TeamEvent.event_type.validator = EventType_validator
TeamEvent.details.validator = EventDetails_validator
TeamEvent._all_field_names_ = set([
    'timestamp',
    'event_category',
    'actor',
    'origin',
    'involve_non_team_member',
    'context',
    'participants',
    'assets',
    'event_type',
    'details',
])
TeamEvent._all_fields_ = [
    ('timestamp', TeamEvent.timestamp.validator),
    ('event_category', TeamEvent.event_category.validator),
    ('actor', TeamEvent.actor.validator),
    ('origin', TeamEvent.origin.validator),
    ('involve_non_team_member', TeamEvent.involve_non_team_member.validator),
    ('context', TeamEvent.context.validator),
    ('participants', TeamEvent.participants.validator),
    ('assets', TeamEvent.assets.validator),
    ('event_type', TeamEvent.event_type.validator),
    ('details', TeamEvent.details.validator),
]

TeamExtensionsPolicy._disabled_validator = bv.Void()
TeamExtensionsPolicy._enabled_validator = bv.Void()
TeamExtensionsPolicy._other_validator = bv.Void()
TeamExtensionsPolicy._tagmap = {
    'disabled': TeamExtensionsPolicy._disabled_validator,
    'enabled': TeamExtensionsPolicy._enabled_validator,
    'other': TeamExtensionsPolicy._other_validator,
}

TeamExtensionsPolicy.disabled = TeamExtensionsPolicy('disabled')
TeamExtensionsPolicy.enabled = TeamExtensionsPolicy('enabled')
TeamExtensionsPolicy.other = TeamExtensionsPolicy('other')

TeamExtensionsPolicyChangedDetails.new_value.validator = TeamExtensionsPolicy_validator
TeamExtensionsPolicyChangedDetails.previous_value.validator = TeamExtensionsPolicy_validator
TeamExtensionsPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TeamExtensionsPolicyChangedDetails._all_fields_ = [
    ('new_value', TeamExtensionsPolicyChangedDetails.new_value.validator),
    ('previous_value', TeamExtensionsPolicyChangedDetails.previous_value.validator),
]

TeamExtensionsPolicyChangedType.description.validator = bv.String()
TeamExtensionsPolicyChangedType._all_field_names_ = set(['description'])
TeamExtensionsPolicyChangedType._all_fields_ = [('description', TeamExtensionsPolicyChangedType.description.validator)]

TeamFolderChangeStatusDetails.new_value.validator = team.TeamFolderStatus_validator
TeamFolderChangeStatusDetails.previous_value.validator = bv.Nullable(team.TeamFolderStatus_validator)
TeamFolderChangeStatusDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TeamFolderChangeStatusDetails._all_fields_ = [
    ('new_value', TeamFolderChangeStatusDetails.new_value.validator),
    ('previous_value', TeamFolderChangeStatusDetails.previous_value.validator),
]

TeamFolderChangeStatusType.description.validator = bv.String()
TeamFolderChangeStatusType._all_field_names_ = set(['description'])
TeamFolderChangeStatusType._all_fields_ = [('description', TeamFolderChangeStatusType.description.validator)]

TeamFolderCreateDetails._all_field_names_ = set([])
TeamFolderCreateDetails._all_fields_ = []

TeamFolderCreateType.description.validator = bv.String()
TeamFolderCreateType._all_field_names_ = set(['description'])
TeamFolderCreateType._all_fields_ = [('description', TeamFolderCreateType.description.validator)]

TeamFolderDowngradeDetails.target_asset_index.validator = bv.UInt64()
TeamFolderDowngradeDetails._all_field_names_ = set(['target_asset_index'])
TeamFolderDowngradeDetails._all_fields_ = [('target_asset_index', TeamFolderDowngradeDetails.target_asset_index.validator)]

TeamFolderDowngradeType.description.validator = bv.String()
TeamFolderDowngradeType._all_field_names_ = set(['description'])
TeamFolderDowngradeType._all_fields_ = [('description', TeamFolderDowngradeType.description.validator)]

TeamFolderPermanentlyDeleteDetails._all_field_names_ = set([])
TeamFolderPermanentlyDeleteDetails._all_fields_ = []

TeamFolderPermanentlyDeleteType.description.validator = bv.String()
TeamFolderPermanentlyDeleteType._all_field_names_ = set(['description'])
TeamFolderPermanentlyDeleteType._all_fields_ = [('description', TeamFolderPermanentlyDeleteType.description.validator)]

TeamFolderRenameDetails.previous_folder_name.validator = bv.String()
TeamFolderRenameDetails.new_folder_name.validator = bv.String()
TeamFolderRenameDetails._all_field_names_ = set([
    'previous_folder_name',
    'new_folder_name',
])
TeamFolderRenameDetails._all_fields_ = [
    ('previous_folder_name', TeamFolderRenameDetails.previous_folder_name.validator),
    ('new_folder_name', TeamFolderRenameDetails.new_folder_name.validator),
]

TeamFolderRenameType.description.validator = bv.String()
TeamFolderRenameType._all_field_names_ = set(['description'])
TeamFolderRenameType._all_fields_ = [('description', TeamFolderRenameType.description.validator)]

TeamInviteDetails.invite_method.validator = InviteMethod_validator
TeamInviteDetails.additional_license_purchase.validator = bv.Nullable(bv.Boolean())
TeamInviteDetails._all_field_names_ = set([
    'invite_method',
    'additional_license_purchase',
])
TeamInviteDetails._all_fields_ = [
    ('invite_method', TeamInviteDetails.invite_method.validator),
    ('additional_license_purchase', TeamInviteDetails.additional_license_purchase.validator),
]

TeamLinkedAppLogInfo._field_names_ = set([])
TeamLinkedAppLogInfo._all_field_names_ = AppLogInfo._all_field_names_.union(TeamLinkedAppLogInfo._field_names_)
TeamLinkedAppLogInfo._fields_ = []
TeamLinkedAppLogInfo._all_fields_ = AppLogInfo._all_fields_ + TeamLinkedAppLogInfo._fields_

TeamLogInfo.display_name.validator = bv.String()
TeamLogInfo._all_field_names_ = set(['display_name'])
TeamLogInfo._all_fields_ = [('display_name', TeamLogInfo.display_name.validator)]

TeamMemberLogInfo.team_member_id.validator = bv.Nullable(team_common.TeamMemberId_validator)
TeamMemberLogInfo.member_external_id.validator = bv.Nullable(team_common.MemberExternalId_validator)
TeamMemberLogInfo.team.validator = bv.Nullable(TeamLogInfo_validator)
TeamMemberLogInfo._field_names_ = set([
    'team_member_id',
    'member_external_id',
    'team',
])
TeamMemberLogInfo._all_field_names_ = UserLogInfo._all_field_names_.union(TeamMemberLogInfo._field_names_)
TeamMemberLogInfo._fields_ = [
    ('team_member_id', TeamMemberLogInfo.team_member_id.validator),
    ('member_external_id', TeamMemberLogInfo.member_external_id.validator),
    ('team', TeamMemberLogInfo.team.validator),
]
TeamMemberLogInfo._all_fields_ = UserLogInfo._all_fields_ + TeamMemberLogInfo._fields_

TeamMembershipType._free_validator = bv.Void()
TeamMembershipType._full_validator = bv.Void()
TeamMembershipType._guest_validator = bv.Void()
TeamMembershipType._other_validator = bv.Void()
TeamMembershipType._tagmap = {
    'free': TeamMembershipType._free_validator,
    'full': TeamMembershipType._full_validator,
    'guest': TeamMembershipType._guest_validator,
    'other': TeamMembershipType._other_validator,
}

TeamMembershipType.free = TeamMembershipType('free')
TeamMembershipType.full = TeamMembershipType('full')
TeamMembershipType.guest = TeamMembershipType('guest')
TeamMembershipType.other = TeamMembershipType('other')

TeamMergeFromDetails.team_name.validator = bv.String()
TeamMergeFromDetails._all_field_names_ = set(['team_name'])
TeamMergeFromDetails._all_fields_ = [('team_name', TeamMergeFromDetails.team_name.validator)]

TeamMergeFromType.description.validator = bv.String()
TeamMergeFromType._all_field_names_ = set(['description'])
TeamMergeFromType._all_fields_ = [('description', TeamMergeFromType.description.validator)]

TeamMergeRequestAcceptedDetails.request_accepted_details.validator = TeamMergeRequestAcceptedExtraDetails_validator
TeamMergeRequestAcceptedDetails._all_field_names_ = set(['request_accepted_details'])
TeamMergeRequestAcceptedDetails._all_fields_ = [('request_accepted_details', TeamMergeRequestAcceptedDetails.request_accepted_details.validator)]

TeamMergeRequestAcceptedExtraDetails._primary_team_validator = PrimaryTeamRequestAcceptedDetails_validator
TeamMergeRequestAcceptedExtraDetails._secondary_team_validator = SecondaryTeamRequestAcceptedDetails_validator
TeamMergeRequestAcceptedExtraDetails._other_validator = bv.Void()
TeamMergeRequestAcceptedExtraDetails._tagmap = {
    'primary_team': TeamMergeRequestAcceptedExtraDetails._primary_team_validator,
    'secondary_team': TeamMergeRequestAcceptedExtraDetails._secondary_team_validator,
    'other': TeamMergeRequestAcceptedExtraDetails._other_validator,
}

TeamMergeRequestAcceptedExtraDetails.other = TeamMergeRequestAcceptedExtraDetails('other')

TeamMergeRequestAcceptedShownToPrimaryTeamDetails.secondary_team.validator = bv.String()
TeamMergeRequestAcceptedShownToPrimaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestAcceptedShownToPrimaryTeamDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
TeamMergeRequestAcceptedShownToPrimaryTeamDetails._all_fields_ = [
    ('secondary_team', TeamMergeRequestAcceptedShownToPrimaryTeamDetails.secondary_team.validator),
    ('sent_by', TeamMergeRequestAcceptedShownToPrimaryTeamDetails.sent_by.validator),
]

TeamMergeRequestAcceptedShownToPrimaryTeamType.description.validator = bv.String()
TeamMergeRequestAcceptedShownToPrimaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestAcceptedShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestAcceptedShownToPrimaryTeamType.description.validator)]

TeamMergeRequestAcceptedShownToSecondaryTeamDetails.primary_team.validator = bv.String()
TeamMergeRequestAcceptedShownToSecondaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestAcceptedShownToSecondaryTeamDetails._all_field_names_ = set([
    'primary_team',
    'sent_by',
])
TeamMergeRequestAcceptedShownToSecondaryTeamDetails._all_fields_ = [
    ('primary_team', TeamMergeRequestAcceptedShownToSecondaryTeamDetails.primary_team.validator),
    ('sent_by', TeamMergeRequestAcceptedShownToSecondaryTeamDetails.sent_by.validator),
]

TeamMergeRequestAcceptedShownToSecondaryTeamType.description.validator = bv.String()
TeamMergeRequestAcceptedShownToSecondaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestAcceptedShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestAcceptedShownToSecondaryTeamType.description.validator)]

TeamMergeRequestAcceptedType.description.validator = bv.String()
TeamMergeRequestAcceptedType._all_field_names_ = set(['description'])
TeamMergeRequestAcceptedType._all_fields_ = [('description', TeamMergeRequestAcceptedType.description.validator)]

TeamMergeRequestAutoCanceledDetails.details.validator = bv.Nullable(bv.String())
TeamMergeRequestAutoCanceledDetails._all_field_names_ = set(['details'])
TeamMergeRequestAutoCanceledDetails._all_fields_ = [('details', TeamMergeRequestAutoCanceledDetails.details.validator)]

TeamMergeRequestAutoCanceledType.description.validator = bv.String()
TeamMergeRequestAutoCanceledType._all_field_names_ = set(['description'])
TeamMergeRequestAutoCanceledType._all_fields_ = [('description', TeamMergeRequestAutoCanceledType.description.validator)]

TeamMergeRequestCanceledDetails.request_canceled_details.validator = TeamMergeRequestCanceledExtraDetails_validator
TeamMergeRequestCanceledDetails._all_field_names_ = set(['request_canceled_details'])
TeamMergeRequestCanceledDetails._all_fields_ = [('request_canceled_details', TeamMergeRequestCanceledDetails.request_canceled_details.validator)]

TeamMergeRequestCanceledExtraDetails._primary_team_validator = PrimaryTeamRequestCanceledDetails_validator
TeamMergeRequestCanceledExtraDetails._secondary_team_validator = SecondaryTeamRequestCanceledDetails_validator
TeamMergeRequestCanceledExtraDetails._other_validator = bv.Void()
TeamMergeRequestCanceledExtraDetails._tagmap = {
    'primary_team': TeamMergeRequestCanceledExtraDetails._primary_team_validator,
    'secondary_team': TeamMergeRequestCanceledExtraDetails._secondary_team_validator,
    'other': TeamMergeRequestCanceledExtraDetails._other_validator,
}

TeamMergeRequestCanceledExtraDetails.other = TeamMergeRequestCanceledExtraDetails('other')

TeamMergeRequestCanceledShownToPrimaryTeamDetails.secondary_team.validator = bv.String()
TeamMergeRequestCanceledShownToPrimaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestCanceledShownToPrimaryTeamDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
TeamMergeRequestCanceledShownToPrimaryTeamDetails._all_fields_ = [
    ('secondary_team', TeamMergeRequestCanceledShownToPrimaryTeamDetails.secondary_team.validator),
    ('sent_by', TeamMergeRequestCanceledShownToPrimaryTeamDetails.sent_by.validator),
]

TeamMergeRequestCanceledShownToPrimaryTeamType.description.validator = bv.String()
TeamMergeRequestCanceledShownToPrimaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestCanceledShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestCanceledShownToPrimaryTeamType.description.validator)]

TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_to.validator = bv.String()
TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestCanceledShownToSecondaryTeamDetails._all_field_names_ = set([
    'sent_to',
    'sent_by',
])
TeamMergeRequestCanceledShownToSecondaryTeamDetails._all_fields_ = [
    ('sent_to', TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_to.validator),
    ('sent_by', TeamMergeRequestCanceledShownToSecondaryTeamDetails.sent_by.validator),
]

TeamMergeRequestCanceledShownToSecondaryTeamType.description.validator = bv.String()
TeamMergeRequestCanceledShownToSecondaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestCanceledShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestCanceledShownToSecondaryTeamType.description.validator)]

TeamMergeRequestCanceledType.description.validator = bv.String()
TeamMergeRequestCanceledType._all_field_names_ = set(['description'])
TeamMergeRequestCanceledType._all_fields_ = [('description', TeamMergeRequestCanceledType.description.validator)]

TeamMergeRequestExpiredDetails.request_expired_details.validator = TeamMergeRequestExpiredExtraDetails_validator
TeamMergeRequestExpiredDetails._all_field_names_ = set(['request_expired_details'])
TeamMergeRequestExpiredDetails._all_fields_ = [('request_expired_details', TeamMergeRequestExpiredDetails.request_expired_details.validator)]

TeamMergeRequestExpiredExtraDetails._primary_team_validator = PrimaryTeamRequestExpiredDetails_validator
TeamMergeRequestExpiredExtraDetails._secondary_team_validator = SecondaryTeamRequestExpiredDetails_validator
TeamMergeRequestExpiredExtraDetails._other_validator = bv.Void()
TeamMergeRequestExpiredExtraDetails._tagmap = {
    'primary_team': TeamMergeRequestExpiredExtraDetails._primary_team_validator,
    'secondary_team': TeamMergeRequestExpiredExtraDetails._secondary_team_validator,
    'other': TeamMergeRequestExpiredExtraDetails._other_validator,
}

TeamMergeRequestExpiredExtraDetails.other = TeamMergeRequestExpiredExtraDetails('other')

TeamMergeRequestExpiredShownToPrimaryTeamDetails.secondary_team.validator = bv.String()
TeamMergeRequestExpiredShownToPrimaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestExpiredShownToPrimaryTeamDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
TeamMergeRequestExpiredShownToPrimaryTeamDetails._all_fields_ = [
    ('secondary_team', TeamMergeRequestExpiredShownToPrimaryTeamDetails.secondary_team.validator),
    ('sent_by', TeamMergeRequestExpiredShownToPrimaryTeamDetails.sent_by.validator),
]

TeamMergeRequestExpiredShownToPrimaryTeamType.description.validator = bv.String()
TeamMergeRequestExpiredShownToPrimaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestExpiredShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestExpiredShownToPrimaryTeamType.description.validator)]

TeamMergeRequestExpiredShownToSecondaryTeamDetails.sent_to.validator = bv.String()
TeamMergeRequestExpiredShownToSecondaryTeamDetails._all_field_names_ = set(['sent_to'])
TeamMergeRequestExpiredShownToSecondaryTeamDetails._all_fields_ = [('sent_to', TeamMergeRequestExpiredShownToSecondaryTeamDetails.sent_to.validator)]

TeamMergeRequestExpiredShownToSecondaryTeamType.description.validator = bv.String()
TeamMergeRequestExpiredShownToSecondaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestExpiredShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestExpiredShownToSecondaryTeamType.description.validator)]

TeamMergeRequestExpiredType.description.validator = bv.String()
TeamMergeRequestExpiredType._all_field_names_ = set(['description'])
TeamMergeRequestExpiredType._all_fields_ = [('description', TeamMergeRequestExpiredType.description.validator)]

TeamMergeRequestRejectedShownToPrimaryTeamDetails.secondary_team.validator = bv.String()
TeamMergeRequestRejectedShownToPrimaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestRejectedShownToPrimaryTeamDetails._all_field_names_ = set([
    'secondary_team',
    'sent_by',
])
TeamMergeRequestRejectedShownToPrimaryTeamDetails._all_fields_ = [
    ('secondary_team', TeamMergeRequestRejectedShownToPrimaryTeamDetails.secondary_team.validator),
    ('sent_by', TeamMergeRequestRejectedShownToPrimaryTeamDetails.sent_by.validator),
]

TeamMergeRequestRejectedShownToPrimaryTeamType.description.validator = bv.String()
TeamMergeRequestRejectedShownToPrimaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestRejectedShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestRejectedShownToPrimaryTeamType.description.validator)]

TeamMergeRequestRejectedShownToSecondaryTeamDetails.sent_by.validator = bv.String()
TeamMergeRequestRejectedShownToSecondaryTeamDetails._all_field_names_ = set(['sent_by'])
TeamMergeRequestRejectedShownToSecondaryTeamDetails._all_fields_ = [('sent_by', TeamMergeRequestRejectedShownToSecondaryTeamDetails.sent_by.validator)]

TeamMergeRequestRejectedShownToSecondaryTeamType.description.validator = bv.String()
TeamMergeRequestRejectedShownToSecondaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestRejectedShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestRejectedShownToSecondaryTeamType.description.validator)]

TeamMergeRequestReminderDetails.request_reminder_details.validator = TeamMergeRequestReminderExtraDetails_validator
TeamMergeRequestReminderDetails._all_field_names_ = set(['request_reminder_details'])
TeamMergeRequestReminderDetails._all_fields_ = [('request_reminder_details', TeamMergeRequestReminderDetails.request_reminder_details.validator)]

TeamMergeRequestReminderExtraDetails._primary_team_validator = PrimaryTeamRequestReminderDetails_validator
TeamMergeRequestReminderExtraDetails._secondary_team_validator = SecondaryTeamRequestReminderDetails_validator
TeamMergeRequestReminderExtraDetails._other_validator = bv.Void()
TeamMergeRequestReminderExtraDetails._tagmap = {
    'primary_team': TeamMergeRequestReminderExtraDetails._primary_team_validator,
    'secondary_team': TeamMergeRequestReminderExtraDetails._secondary_team_validator,
    'other': TeamMergeRequestReminderExtraDetails._other_validator,
}

TeamMergeRequestReminderExtraDetails.other = TeamMergeRequestReminderExtraDetails('other')

TeamMergeRequestReminderShownToPrimaryTeamDetails.secondary_team.validator = bv.String()
TeamMergeRequestReminderShownToPrimaryTeamDetails.sent_to.validator = bv.String()
TeamMergeRequestReminderShownToPrimaryTeamDetails._all_field_names_ = set([
    'secondary_team',
    'sent_to',
])
TeamMergeRequestReminderShownToPrimaryTeamDetails._all_fields_ = [
    ('secondary_team', TeamMergeRequestReminderShownToPrimaryTeamDetails.secondary_team.validator),
    ('sent_to', TeamMergeRequestReminderShownToPrimaryTeamDetails.sent_to.validator),
]

TeamMergeRequestReminderShownToPrimaryTeamType.description.validator = bv.String()
TeamMergeRequestReminderShownToPrimaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestReminderShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestReminderShownToPrimaryTeamType.description.validator)]

TeamMergeRequestReminderShownToSecondaryTeamDetails.sent_to.validator = bv.String()
TeamMergeRequestReminderShownToSecondaryTeamDetails._all_field_names_ = set(['sent_to'])
TeamMergeRequestReminderShownToSecondaryTeamDetails._all_fields_ = [('sent_to', TeamMergeRequestReminderShownToSecondaryTeamDetails.sent_to.validator)]

TeamMergeRequestReminderShownToSecondaryTeamType.description.validator = bv.String()
TeamMergeRequestReminderShownToSecondaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestReminderShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestReminderShownToSecondaryTeamType.description.validator)]

TeamMergeRequestReminderType.description.validator = bv.String()
TeamMergeRequestReminderType._all_field_names_ = set(['description'])
TeamMergeRequestReminderType._all_fields_ = [('description', TeamMergeRequestReminderType.description.validator)]

TeamMergeRequestRevokedDetails.team.validator = bv.String()
TeamMergeRequestRevokedDetails._all_field_names_ = set(['team'])
TeamMergeRequestRevokedDetails._all_fields_ = [('team', TeamMergeRequestRevokedDetails.team.validator)]

TeamMergeRequestRevokedType.description.validator = bv.String()
TeamMergeRequestRevokedType._all_field_names_ = set(['description'])
TeamMergeRequestRevokedType._all_fields_ = [('description', TeamMergeRequestRevokedType.description.validator)]

TeamMergeRequestSentShownToPrimaryTeamDetails.secondary_team.validator = bv.String()
TeamMergeRequestSentShownToPrimaryTeamDetails.sent_to.validator = bv.String()
TeamMergeRequestSentShownToPrimaryTeamDetails._all_field_names_ = set([
    'secondary_team',
    'sent_to',
])
TeamMergeRequestSentShownToPrimaryTeamDetails._all_fields_ = [
    ('secondary_team', TeamMergeRequestSentShownToPrimaryTeamDetails.secondary_team.validator),
    ('sent_to', TeamMergeRequestSentShownToPrimaryTeamDetails.sent_to.validator),
]

TeamMergeRequestSentShownToPrimaryTeamType.description.validator = bv.String()
TeamMergeRequestSentShownToPrimaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestSentShownToPrimaryTeamType._all_fields_ = [('description', TeamMergeRequestSentShownToPrimaryTeamType.description.validator)]

TeamMergeRequestSentShownToSecondaryTeamDetails.sent_to.validator = bv.String()
TeamMergeRequestSentShownToSecondaryTeamDetails._all_field_names_ = set(['sent_to'])
TeamMergeRequestSentShownToSecondaryTeamDetails._all_fields_ = [('sent_to', TeamMergeRequestSentShownToSecondaryTeamDetails.sent_to.validator)]

TeamMergeRequestSentShownToSecondaryTeamType.description.validator = bv.String()
TeamMergeRequestSentShownToSecondaryTeamType._all_field_names_ = set(['description'])
TeamMergeRequestSentShownToSecondaryTeamType._all_fields_ = [('description', TeamMergeRequestSentShownToSecondaryTeamType.description.validator)]

TeamMergeToDetails.team_name.validator = bv.String()
TeamMergeToDetails._all_field_names_ = set(['team_name'])
TeamMergeToDetails._all_fields_ = [('team_name', TeamMergeToDetails.team_name.validator)]

TeamMergeToType.description.validator = bv.String()
TeamMergeToType._all_field_names_ = set(['description'])
TeamMergeToType._all_fields_ = [('description', TeamMergeToType.description.validator)]

TeamName.team_display_name.validator = bv.String()
TeamName.team_legal_name.validator = bv.String()
TeamName._all_field_names_ = set([
    'team_display_name',
    'team_legal_name',
])
TeamName._all_fields_ = [
    ('team_display_name', TeamName.team_display_name.validator),
    ('team_legal_name', TeamName.team_legal_name.validator),
]

TeamProfileAddBackgroundDetails._all_field_names_ = set([])
TeamProfileAddBackgroundDetails._all_fields_ = []

TeamProfileAddBackgroundType.description.validator = bv.String()
TeamProfileAddBackgroundType._all_field_names_ = set(['description'])
TeamProfileAddBackgroundType._all_fields_ = [('description', TeamProfileAddBackgroundType.description.validator)]

TeamProfileAddLogoDetails._all_field_names_ = set([])
TeamProfileAddLogoDetails._all_fields_ = []

TeamProfileAddLogoType.description.validator = bv.String()
TeamProfileAddLogoType._all_field_names_ = set(['description'])
TeamProfileAddLogoType._all_fields_ = [('description', TeamProfileAddLogoType.description.validator)]

TeamProfileChangeBackgroundDetails._all_field_names_ = set([])
TeamProfileChangeBackgroundDetails._all_fields_ = []

TeamProfileChangeBackgroundType.description.validator = bv.String()
TeamProfileChangeBackgroundType._all_field_names_ = set(['description'])
TeamProfileChangeBackgroundType._all_fields_ = [('description', TeamProfileChangeBackgroundType.description.validator)]

TeamProfileChangeDefaultLanguageDetails.new_value.validator = common.LanguageCode_validator
TeamProfileChangeDefaultLanguageDetails.previous_value.validator = common.LanguageCode_validator
TeamProfileChangeDefaultLanguageDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TeamProfileChangeDefaultLanguageDetails._all_fields_ = [
    ('new_value', TeamProfileChangeDefaultLanguageDetails.new_value.validator),
    ('previous_value', TeamProfileChangeDefaultLanguageDetails.previous_value.validator),
]

TeamProfileChangeDefaultLanguageType.description.validator = bv.String()
TeamProfileChangeDefaultLanguageType._all_field_names_ = set(['description'])
TeamProfileChangeDefaultLanguageType._all_fields_ = [('description', TeamProfileChangeDefaultLanguageType.description.validator)]

TeamProfileChangeLogoDetails._all_field_names_ = set([])
TeamProfileChangeLogoDetails._all_fields_ = []

TeamProfileChangeLogoType.description.validator = bv.String()
TeamProfileChangeLogoType._all_field_names_ = set(['description'])
TeamProfileChangeLogoType._all_fields_ = [('description', TeamProfileChangeLogoType.description.validator)]

TeamProfileChangeNameDetails.previous_value.validator = bv.Nullable(TeamName_validator)
TeamProfileChangeNameDetails.new_value.validator = TeamName_validator
TeamProfileChangeNameDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
TeamProfileChangeNameDetails._all_fields_ = [
    ('previous_value', TeamProfileChangeNameDetails.previous_value.validator),
    ('new_value', TeamProfileChangeNameDetails.new_value.validator),
]

TeamProfileChangeNameType.description.validator = bv.String()
TeamProfileChangeNameType._all_field_names_ = set(['description'])
TeamProfileChangeNameType._all_fields_ = [('description', TeamProfileChangeNameType.description.validator)]

TeamProfileRemoveBackgroundDetails._all_field_names_ = set([])
TeamProfileRemoveBackgroundDetails._all_fields_ = []

TeamProfileRemoveBackgroundType.description.validator = bv.String()
TeamProfileRemoveBackgroundType._all_field_names_ = set(['description'])
TeamProfileRemoveBackgroundType._all_fields_ = [('description', TeamProfileRemoveBackgroundType.description.validator)]

TeamProfileRemoveLogoDetails._all_field_names_ = set([])
TeamProfileRemoveLogoDetails._all_fields_ = []

TeamProfileRemoveLogoType.description.validator = bv.String()
TeamProfileRemoveLogoType._all_field_names_ = set(['description'])
TeamProfileRemoveLogoType._all_fields_ = [('description', TeamProfileRemoveLogoType.description.validator)]

TeamSelectiveSyncPolicy._disabled_validator = bv.Void()
TeamSelectiveSyncPolicy._enabled_validator = bv.Void()
TeamSelectiveSyncPolicy._other_validator = bv.Void()
TeamSelectiveSyncPolicy._tagmap = {
    'disabled': TeamSelectiveSyncPolicy._disabled_validator,
    'enabled': TeamSelectiveSyncPolicy._enabled_validator,
    'other': TeamSelectiveSyncPolicy._other_validator,
}

TeamSelectiveSyncPolicy.disabled = TeamSelectiveSyncPolicy('disabled')
TeamSelectiveSyncPolicy.enabled = TeamSelectiveSyncPolicy('enabled')
TeamSelectiveSyncPolicy.other = TeamSelectiveSyncPolicy('other')

TeamSelectiveSyncPolicyChangedDetails.new_value.validator = TeamSelectiveSyncPolicy_validator
TeamSelectiveSyncPolicyChangedDetails.previous_value.validator = TeamSelectiveSyncPolicy_validator
TeamSelectiveSyncPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TeamSelectiveSyncPolicyChangedDetails._all_fields_ = [
    ('new_value', TeamSelectiveSyncPolicyChangedDetails.new_value.validator),
    ('previous_value', TeamSelectiveSyncPolicyChangedDetails.previous_value.validator),
]

TeamSelectiveSyncPolicyChangedType.description.validator = bv.String()
TeamSelectiveSyncPolicyChangedType._all_field_names_ = set(['description'])
TeamSelectiveSyncPolicyChangedType._all_fields_ = [('description', TeamSelectiveSyncPolicyChangedType.description.validator)]

TeamSelectiveSyncSettingsChangedDetails.previous_value.validator = files.SyncSetting_validator
TeamSelectiveSyncSettingsChangedDetails.new_value.validator = files.SyncSetting_validator
TeamSelectiveSyncSettingsChangedDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
TeamSelectiveSyncSettingsChangedDetails._all_fields_ = [
    ('previous_value', TeamSelectiveSyncSettingsChangedDetails.previous_value.validator),
    ('new_value', TeamSelectiveSyncSettingsChangedDetails.new_value.validator),
]

TeamSelectiveSyncSettingsChangedType.description.validator = bv.String()
TeamSelectiveSyncSettingsChangedType._all_field_names_ = set(['description'])
TeamSelectiveSyncSettingsChangedType._all_fields_ = [('description', TeamSelectiveSyncSettingsChangedType.description.validator)]

TeamSharingWhitelistSubjectsChangedDetails.added_whitelist_subjects.validator = bv.List(bv.String())
TeamSharingWhitelistSubjectsChangedDetails.removed_whitelist_subjects.validator = bv.List(bv.String())
TeamSharingWhitelistSubjectsChangedDetails._all_field_names_ = set([
    'added_whitelist_subjects',
    'removed_whitelist_subjects',
])
TeamSharingWhitelistSubjectsChangedDetails._all_fields_ = [
    ('added_whitelist_subjects', TeamSharingWhitelistSubjectsChangedDetails.added_whitelist_subjects.validator),
    ('removed_whitelist_subjects', TeamSharingWhitelistSubjectsChangedDetails.removed_whitelist_subjects.validator),
]

TeamSharingWhitelistSubjectsChangedType.description.validator = bv.String()
TeamSharingWhitelistSubjectsChangedType._all_field_names_ = set(['description'])
TeamSharingWhitelistSubjectsChangedType._all_fields_ = [('description', TeamSharingWhitelistSubjectsChangedType.description.validator)]

TfaAddBackupPhoneDetails._all_field_names_ = set([])
TfaAddBackupPhoneDetails._all_fields_ = []

TfaAddBackupPhoneType.description.validator = bv.String()
TfaAddBackupPhoneType._all_field_names_ = set(['description'])
TfaAddBackupPhoneType._all_fields_ = [('description', TfaAddBackupPhoneType.description.validator)]

TfaAddExceptionDetails._all_field_names_ = set([])
TfaAddExceptionDetails._all_fields_ = []

TfaAddExceptionType.description.validator = bv.String()
TfaAddExceptionType._all_field_names_ = set(['description'])
TfaAddExceptionType._all_fields_ = [('description', TfaAddExceptionType.description.validator)]

TfaAddSecurityKeyDetails._all_field_names_ = set([])
TfaAddSecurityKeyDetails._all_fields_ = []

TfaAddSecurityKeyType.description.validator = bv.String()
TfaAddSecurityKeyType._all_field_names_ = set(['description'])
TfaAddSecurityKeyType._all_fields_ = [('description', TfaAddSecurityKeyType.description.validator)]

TfaChangeBackupPhoneDetails._all_field_names_ = set([])
TfaChangeBackupPhoneDetails._all_fields_ = []

TfaChangeBackupPhoneType.description.validator = bv.String()
TfaChangeBackupPhoneType._all_field_names_ = set(['description'])
TfaChangeBackupPhoneType._all_fields_ = [('description', TfaChangeBackupPhoneType.description.validator)]

TfaChangePolicyDetails.new_value.validator = team_policies.TwoStepVerificationPolicy_validator
TfaChangePolicyDetails.previous_value.validator = bv.Nullable(team_policies.TwoStepVerificationPolicy_validator)
TfaChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TfaChangePolicyDetails._all_fields_ = [
    ('new_value', TfaChangePolicyDetails.new_value.validator),
    ('previous_value', TfaChangePolicyDetails.previous_value.validator),
]

TfaChangePolicyType.description.validator = bv.String()
TfaChangePolicyType._all_field_names_ = set(['description'])
TfaChangePolicyType._all_fields_ = [('description', TfaChangePolicyType.description.validator)]

TfaChangeStatusDetails.new_value.validator = TfaConfiguration_validator
TfaChangeStatusDetails.previous_value.validator = bv.Nullable(TfaConfiguration_validator)
TfaChangeStatusDetails.used_rescue_code.validator = bv.Nullable(bv.Boolean())
TfaChangeStatusDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
    'used_rescue_code',
])
TfaChangeStatusDetails._all_fields_ = [
    ('new_value', TfaChangeStatusDetails.new_value.validator),
    ('previous_value', TfaChangeStatusDetails.previous_value.validator),
    ('used_rescue_code', TfaChangeStatusDetails.used_rescue_code.validator),
]

TfaChangeStatusType.description.validator = bv.String()
TfaChangeStatusType._all_field_names_ = set(['description'])
TfaChangeStatusType._all_fields_ = [('description', TfaChangeStatusType.description.validator)]

TfaConfiguration._authenticator_validator = bv.Void()
TfaConfiguration._disabled_validator = bv.Void()
TfaConfiguration._enabled_validator = bv.Void()
TfaConfiguration._sms_validator = bv.Void()
TfaConfiguration._other_validator = bv.Void()
TfaConfiguration._tagmap = {
    'authenticator': TfaConfiguration._authenticator_validator,
    'disabled': TfaConfiguration._disabled_validator,
    'enabled': TfaConfiguration._enabled_validator,
    'sms': TfaConfiguration._sms_validator,
    'other': TfaConfiguration._other_validator,
}

TfaConfiguration.authenticator = TfaConfiguration('authenticator')
TfaConfiguration.disabled = TfaConfiguration('disabled')
TfaConfiguration.enabled = TfaConfiguration('enabled')
TfaConfiguration.sms = TfaConfiguration('sms')
TfaConfiguration.other = TfaConfiguration('other')

TfaRemoveBackupPhoneDetails._all_field_names_ = set([])
TfaRemoveBackupPhoneDetails._all_fields_ = []

TfaRemoveBackupPhoneType.description.validator = bv.String()
TfaRemoveBackupPhoneType._all_field_names_ = set(['description'])
TfaRemoveBackupPhoneType._all_fields_ = [('description', TfaRemoveBackupPhoneType.description.validator)]

TfaRemoveExceptionDetails._all_field_names_ = set([])
TfaRemoveExceptionDetails._all_fields_ = []

TfaRemoveExceptionType.description.validator = bv.String()
TfaRemoveExceptionType._all_field_names_ = set(['description'])
TfaRemoveExceptionType._all_fields_ = [('description', TfaRemoveExceptionType.description.validator)]

TfaRemoveSecurityKeyDetails._all_field_names_ = set([])
TfaRemoveSecurityKeyDetails._all_fields_ = []

TfaRemoveSecurityKeyType.description.validator = bv.String()
TfaRemoveSecurityKeyType._all_field_names_ = set(['description'])
TfaRemoveSecurityKeyType._all_fields_ = [('description', TfaRemoveSecurityKeyType.description.validator)]

TfaResetDetails._all_field_names_ = set([])
TfaResetDetails._all_fields_ = []

TfaResetType.description.validator = bv.String()
TfaResetType._all_field_names_ = set(['description'])
TfaResetType._all_fields_ = [('description', TfaResetType.description.validator)]

TimeUnit._days_validator = bv.Void()
TimeUnit._hours_validator = bv.Void()
TimeUnit._milliseconds_validator = bv.Void()
TimeUnit._minutes_validator = bv.Void()
TimeUnit._months_validator = bv.Void()
TimeUnit._seconds_validator = bv.Void()
TimeUnit._weeks_validator = bv.Void()
TimeUnit._years_validator = bv.Void()
TimeUnit._other_validator = bv.Void()
TimeUnit._tagmap = {
    'days': TimeUnit._days_validator,
    'hours': TimeUnit._hours_validator,
    'milliseconds': TimeUnit._milliseconds_validator,
    'minutes': TimeUnit._minutes_validator,
    'months': TimeUnit._months_validator,
    'seconds': TimeUnit._seconds_validator,
    'weeks': TimeUnit._weeks_validator,
    'years': TimeUnit._years_validator,
    'other': TimeUnit._other_validator,
}

TimeUnit.days = TimeUnit('days')
TimeUnit.hours = TimeUnit('hours')
TimeUnit.milliseconds = TimeUnit('milliseconds')
TimeUnit.minutes = TimeUnit('minutes')
TimeUnit.months = TimeUnit('months')
TimeUnit.seconds = TimeUnit('seconds')
TimeUnit.weeks = TimeUnit('weeks')
TimeUnit.years = TimeUnit('years')
TimeUnit.other = TimeUnit('other')

TrustedNonTeamMemberLogInfo.trusted_non_team_member_type.validator = TrustedNonTeamMemberType_validator
TrustedNonTeamMemberLogInfo.team.validator = bv.Nullable(TeamLogInfo_validator)
TrustedNonTeamMemberLogInfo._field_names_ = set([
    'trusted_non_team_member_type',
    'team',
])
TrustedNonTeamMemberLogInfo._all_field_names_ = UserLogInfo._all_field_names_.union(TrustedNonTeamMemberLogInfo._field_names_)
TrustedNonTeamMemberLogInfo._fields_ = [
    ('trusted_non_team_member_type', TrustedNonTeamMemberLogInfo.trusted_non_team_member_type.validator),
    ('team', TrustedNonTeamMemberLogInfo.team.validator),
]
TrustedNonTeamMemberLogInfo._all_fields_ = UserLogInfo._all_fields_ + TrustedNonTeamMemberLogInfo._fields_

TrustedNonTeamMemberType._enterprise_admin_validator = bv.Void()
TrustedNonTeamMemberType._multi_instance_admin_validator = bv.Void()
TrustedNonTeamMemberType._other_validator = bv.Void()
TrustedNonTeamMemberType._tagmap = {
    'enterprise_admin': TrustedNonTeamMemberType._enterprise_admin_validator,
    'multi_instance_admin': TrustedNonTeamMemberType._multi_instance_admin_validator,
    'other': TrustedNonTeamMemberType._other_validator,
}

TrustedNonTeamMemberType.enterprise_admin = TrustedNonTeamMemberType('enterprise_admin')
TrustedNonTeamMemberType.multi_instance_admin = TrustedNonTeamMemberType('multi_instance_admin')
TrustedNonTeamMemberType.other = TrustedNonTeamMemberType('other')

TrustedTeamsRequestAction._accepted_validator = bv.Void()
TrustedTeamsRequestAction._declined_validator = bv.Void()
TrustedTeamsRequestAction._expired_validator = bv.Void()
TrustedTeamsRequestAction._invited_validator = bv.Void()
TrustedTeamsRequestAction._revoked_validator = bv.Void()
TrustedTeamsRequestAction._other_validator = bv.Void()
TrustedTeamsRequestAction._tagmap = {
    'accepted': TrustedTeamsRequestAction._accepted_validator,
    'declined': TrustedTeamsRequestAction._declined_validator,
    'expired': TrustedTeamsRequestAction._expired_validator,
    'invited': TrustedTeamsRequestAction._invited_validator,
    'revoked': TrustedTeamsRequestAction._revoked_validator,
    'other': TrustedTeamsRequestAction._other_validator,
}

TrustedTeamsRequestAction.accepted = TrustedTeamsRequestAction('accepted')
TrustedTeamsRequestAction.declined = TrustedTeamsRequestAction('declined')
TrustedTeamsRequestAction.expired = TrustedTeamsRequestAction('expired')
TrustedTeamsRequestAction.invited = TrustedTeamsRequestAction('invited')
TrustedTeamsRequestAction.revoked = TrustedTeamsRequestAction('revoked')
TrustedTeamsRequestAction.other = TrustedTeamsRequestAction('other')

TrustedTeamsRequestState._invited_validator = bv.Void()
TrustedTeamsRequestState._linked_validator = bv.Void()
TrustedTeamsRequestState._unlinked_validator = bv.Void()
TrustedTeamsRequestState._other_validator = bv.Void()
TrustedTeamsRequestState._tagmap = {
    'invited': TrustedTeamsRequestState._invited_validator,
    'linked': TrustedTeamsRequestState._linked_validator,
    'unlinked': TrustedTeamsRequestState._unlinked_validator,
    'other': TrustedTeamsRequestState._other_validator,
}

TrustedTeamsRequestState.invited = TrustedTeamsRequestState('invited')
TrustedTeamsRequestState.linked = TrustedTeamsRequestState('linked')
TrustedTeamsRequestState.unlinked = TrustedTeamsRequestState('unlinked')
TrustedTeamsRequestState.other = TrustedTeamsRequestState('other')

TwoAccountChangePolicyDetails.new_value.validator = TwoAccountPolicy_validator
TwoAccountChangePolicyDetails.previous_value.validator = bv.Nullable(TwoAccountPolicy_validator)
TwoAccountChangePolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
TwoAccountChangePolicyDetails._all_fields_ = [
    ('new_value', TwoAccountChangePolicyDetails.new_value.validator),
    ('previous_value', TwoAccountChangePolicyDetails.previous_value.validator),
]

TwoAccountChangePolicyType.description.validator = bv.String()
TwoAccountChangePolicyType._all_field_names_ = set(['description'])
TwoAccountChangePolicyType._all_fields_ = [('description', TwoAccountChangePolicyType.description.validator)]

TwoAccountPolicy._disabled_validator = bv.Void()
TwoAccountPolicy._enabled_validator = bv.Void()
TwoAccountPolicy._other_validator = bv.Void()
TwoAccountPolicy._tagmap = {
    'disabled': TwoAccountPolicy._disabled_validator,
    'enabled': TwoAccountPolicy._enabled_validator,
    'other': TwoAccountPolicy._other_validator,
}

TwoAccountPolicy.disabled = TwoAccountPolicy('disabled')
TwoAccountPolicy.enabled = TwoAccountPolicy('enabled')
TwoAccountPolicy.other = TwoAccountPolicy('other')

UndoNamingConventionDetails._all_field_names_ = set([])
UndoNamingConventionDetails._all_fields_ = []

UndoNamingConventionType.description.validator = bv.String()
UndoNamingConventionType._all_field_names_ = set(['description'])
UndoNamingConventionType._all_fields_ = [('description', UndoNamingConventionType.description.validator)]

UndoOrganizeFolderWithTidyDetails._all_field_names_ = set([])
UndoOrganizeFolderWithTidyDetails._all_fields_ = []

UndoOrganizeFolderWithTidyType.description.validator = bv.String()
UndoOrganizeFolderWithTidyType._all_field_names_ = set(['description'])
UndoOrganizeFolderWithTidyType._all_fields_ = [('description', UndoOrganizeFolderWithTidyType.description.validator)]

UserLinkedAppLogInfo._field_names_ = set([])
UserLinkedAppLogInfo._all_field_names_ = AppLogInfo._all_field_names_.union(UserLinkedAppLogInfo._field_names_)
UserLinkedAppLogInfo._fields_ = []
UserLinkedAppLogInfo._all_fields_ = AppLogInfo._all_fields_ + UserLinkedAppLogInfo._fields_

UserNameLogInfo.given_name.validator = bv.String()
UserNameLogInfo.surname.validator = bv.String()
UserNameLogInfo.locale.validator = bv.Nullable(bv.String())
UserNameLogInfo._all_field_names_ = set([
    'given_name',
    'surname',
    'locale',
])
UserNameLogInfo._all_fields_ = [
    ('given_name', UserNameLogInfo.given_name.validator),
    ('surname', UserNameLogInfo.surname.validator),
    ('locale', UserNameLogInfo.locale.validator),
]

UserOrTeamLinkedAppLogInfo._field_names_ = set([])
UserOrTeamLinkedAppLogInfo._all_field_names_ = AppLogInfo._all_field_names_.union(UserOrTeamLinkedAppLogInfo._field_names_)
UserOrTeamLinkedAppLogInfo._fields_ = []
UserOrTeamLinkedAppLogInfo._all_fields_ = AppLogInfo._all_fields_ + UserOrTeamLinkedAppLogInfo._fields_

UserTagsAddedDetails.values.validator = bv.List(bv.String())
UserTagsAddedDetails._all_field_names_ = set(['values'])
UserTagsAddedDetails._all_fields_ = [('values', UserTagsAddedDetails.values.validator)]

UserTagsAddedType.description.validator = bv.String()
UserTagsAddedType._all_field_names_ = set(['description'])
UserTagsAddedType._all_fields_ = [('description', UserTagsAddedType.description.validator)]

UserTagsRemovedDetails.values.validator = bv.List(bv.String())
UserTagsRemovedDetails._all_field_names_ = set(['values'])
UserTagsRemovedDetails._all_fields_ = [('values', UserTagsRemovedDetails.values.validator)]

UserTagsRemovedType.description.validator = bv.String()
UserTagsRemovedType._all_field_names_ = set(['description'])
UserTagsRemovedType._all_fields_ = [('description', UserTagsRemovedType.description.validator)]

ViewerInfoPolicyChangedDetails.previous_value.validator = PassPolicy_validator
ViewerInfoPolicyChangedDetails.new_value.validator = PassPolicy_validator
ViewerInfoPolicyChangedDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
ViewerInfoPolicyChangedDetails._all_fields_ = [
    ('previous_value', ViewerInfoPolicyChangedDetails.previous_value.validator),
    ('new_value', ViewerInfoPolicyChangedDetails.new_value.validator),
]

ViewerInfoPolicyChangedType.description.validator = bv.String()
ViewerInfoPolicyChangedType._all_field_names_ = set(['description'])
ViewerInfoPolicyChangedType._all_fields_ = [('description', ViewerInfoPolicyChangedType.description.validator)]

WatermarkingPolicy._disabled_validator = bv.Void()
WatermarkingPolicy._enabled_validator = bv.Void()
WatermarkingPolicy._other_validator = bv.Void()
WatermarkingPolicy._tagmap = {
    'disabled': WatermarkingPolicy._disabled_validator,
    'enabled': WatermarkingPolicy._enabled_validator,
    'other': WatermarkingPolicy._other_validator,
}

WatermarkingPolicy.disabled = WatermarkingPolicy('disabled')
WatermarkingPolicy.enabled = WatermarkingPolicy('enabled')
WatermarkingPolicy.other = WatermarkingPolicy('other')

WatermarkingPolicyChangedDetails.new_value.validator = WatermarkingPolicy_validator
WatermarkingPolicyChangedDetails.previous_value.validator = WatermarkingPolicy_validator
WatermarkingPolicyChangedDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
WatermarkingPolicyChangedDetails._all_fields_ = [
    ('new_value', WatermarkingPolicyChangedDetails.new_value.validator),
    ('previous_value', WatermarkingPolicyChangedDetails.previous_value.validator),
]

WatermarkingPolicyChangedType.description.validator = bv.String()
WatermarkingPolicyChangedType._all_field_names_ = set(['description'])
WatermarkingPolicyChangedType._all_fields_ = [('description', WatermarkingPolicyChangedType.description.validator)]

WebDeviceSessionLogInfo.session_info.validator = bv.Nullable(WebSessionLogInfo_validator)
WebDeviceSessionLogInfo.user_agent.validator = bv.String()
WebDeviceSessionLogInfo.os.validator = bv.String()
WebDeviceSessionLogInfo.browser.validator = bv.String()
WebDeviceSessionLogInfo._field_names_ = set([
    'session_info',
    'user_agent',
    'os',
    'browser',
])
WebDeviceSessionLogInfo._all_field_names_ = DeviceSessionLogInfo._all_field_names_.union(WebDeviceSessionLogInfo._field_names_)
WebDeviceSessionLogInfo._fields_ = [
    ('session_info', WebDeviceSessionLogInfo.session_info.validator),
    ('user_agent', WebDeviceSessionLogInfo.user_agent.validator),
    ('os', WebDeviceSessionLogInfo.os.validator),
    ('browser', WebDeviceSessionLogInfo.browser.validator),
]
WebDeviceSessionLogInfo._all_fields_ = DeviceSessionLogInfo._all_fields_ + WebDeviceSessionLogInfo._fields_

WebSessionLogInfo._field_names_ = set([])
WebSessionLogInfo._all_field_names_ = SessionLogInfo._all_field_names_.union(WebSessionLogInfo._field_names_)
WebSessionLogInfo._fields_ = []
WebSessionLogInfo._all_fields_ = SessionLogInfo._all_fields_ + WebSessionLogInfo._fields_

WebSessionsChangeActiveSessionLimitDetails.previous_value.validator = bv.String()
WebSessionsChangeActiveSessionLimitDetails.new_value.validator = bv.String()
WebSessionsChangeActiveSessionLimitDetails._all_field_names_ = set([
    'previous_value',
    'new_value',
])
WebSessionsChangeActiveSessionLimitDetails._all_fields_ = [
    ('previous_value', WebSessionsChangeActiveSessionLimitDetails.previous_value.validator),
    ('new_value', WebSessionsChangeActiveSessionLimitDetails.new_value.validator),
]

WebSessionsChangeActiveSessionLimitType.description.validator = bv.String()
WebSessionsChangeActiveSessionLimitType._all_field_names_ = set(['description'])
WebSessionsChangeActiveSessionLimitType._all_fields_ = [('description', WebSessionsChangeActiveSessionLimitType.description.validator)]

WebSessionsChangeFixedLengthPolicyDetails.new_value.validator = bv.Nullable(WebSessionsFixedLengthPolicy_validator)
WebSessionsChangeFixedLengthPolicyDetails.previous_value.validator = bv.Nullable(WebSessionsFixedLengthPolicy_validator)
WebSessionsChangeFixedLengthPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
WebSessionsChangeFixedLengthPolicyDetails._all_fields_ = [
    ('new_value', WebSessionsChangeFixedLengthPolicyDetails.new_value.validator),
    ('previous_value', WebSessionsChangeFixedLengthPolicyDetails.previous_value.validator),
]

WebSessionsChangeFixedLengthPolicyType.description.validator = bv.String()
WebSessionsChangeFixedLengthPolicyType._all_field_names_ = set(['description'])
WebSessionsChangeFixedLengthPolicyType._all_fields_ = [('description', WebSessionsChangeFixedLengthPolicyType.description.validator)]

WebSessionsChangeIdleLengthPolicyDetails.new_value.validator = bv.Nullable(WebSessionsIdleLengthPolicy_validator)
WebSessionsChangeIdleLengthPolicyDetails.previous_value.validator = bv.Nullable(WebSessionsIdleLengthPolicy_validator)
WebSessionsChangeIdleLengthPolicyDetails._all_field_names_ = set([
    'new_value',
    'previous_value',
])
WebSessionsChangeIdleLengthPolicyDetails._all_fields_ = [
    ('new_value', WebSessionsChangeIdleLengthPolicyDetails.new_value.validator),
    ('previous_value', WebSessionsChangeIdleLengthPolicyDetails.previous_value.validator),
]

WebSessionsChangeIdleLengthPolicyType.description.validator = bv.String()
WebSessionsChangeIdleLengthPolicyType._all_field_names_ = set(['description'])
WebSessionsChangeIdleLengthPolicyType._all_fields_ = [('description', WebSessionsChangeIdleLengthPolicyType.description.validator)]

WebSessionsFixedLengthPolicy._defined_validator = DurationLogInfo_validator
WebSessionsFixedLengthPolicy._undefined_validator = bv.Void()
WebSessionsFixedLengthPolicy._other_validator = bv.Void()
WebSessionsFixedLengthPolicy._tagmap = {
    'defined': WebSessionsFixedLengthPolicy._defined_validator,
    'undefined': WebSessionsFixedLengthPolicy._undefined_validator,
    'other': WebSessionsFixedLengthPolicy._other_validator,
}

WebSessionsFixedLengthPolicy.undefined = WebSessionsFixedLengthPolicy('undefined')
WebSessionsFixedLengthPolicy.other = WebSessionsFixedLengthPolicy('other')

WebSessionsIdleLengthPolicy._defined_validator = DurationLogInfo_validator
WebSessionsIdleLengthPolicy._undefined_validator = bv.Void()
WebSessionsIdleLengthPolicy._other_validator = bv.Void()
WebSessionsIdleLengthPolicy._tagmap = {
    'defined': WebSessionsIdleLengthPolicy._defined_validator,
    'undefined': WebSessionsIdleLengthPolicy._undefined_validator,
    'other': WebSessionsIdleLengthPolicy._other_validator,
}

WebSessionsIdleLengthPolicy.undefined = WebSessionsIdleLengthPolicy('undefined')
WebSessionsIdleLengthPolicy.other = WebSessionsIdleLengthPolicy('other')

GetTeamEventsArg.limit.default = 1000
get_events = bb.Route(
    'get_events',
    1,
    False,
    GetTeamEventsArg_validator,
    GetTeamEventsResult_validator,
    GetTeamEventsError_validator,
    {'auth': 'team',
     'host': 'api',
     'style': 'rpc'},
)
get_events_continue = bb.Route(
    'get_events/continue',
    1,
    False,
    GetTeamEventsContinueArg_validator,
    GetTeamEventsResult_validator,
    GetTeamEventsContinueError_validator,
    {'auth': 'team',
     'host': 'api',
     'style': 'rpc'},
)

ROUTES = {
    'get_events': get_events,
    'get_events/continue': get_events_continue,
}

