byceps/byceps

View on GitHub
byceps/events/authn.py

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
"""
byceps.events.authn
~~~~~~~~~~~~~~~~~~~

:Copyright: 2014-2024 Jochen Kupperschmidt
:License: Revised BSD (see `LICENSE` file for details)
"""

from dataclasses import dataclass

from .base import _BaseEvent, EventSite, EventUser


@dataclass(frozen=True)
class PasswordUpdatedEvent(_BaseEvent):
    user: EventUser


@dataclass(frozen=True)
class _UserIdentityTagEvent(_BaseEvent):
    identifier: str
    user: EventUser


@dataclass(frozen=True)
class UserIdentityTagCreatedEvent(_UserIdentityTagEvent):
    pass


@dataclass(frozen=True)
class UserIdentityTagDeletedEvent(_UserIdentityTagEvent):
    pass


@dataclass(frozen=True)
class UserLoggedInEvent(_BaseEvent):
    site: EventSite | None