28 lines
576 B
Python
28 lines
576 B
Python
from dataclasses import dataclass, field
|
|
from datetime import date
|
|
|
|
# always use @dataclass with slots=True for better performance
|
|
|
|
@dataclass(slots=True)
|
|
class LoginInfo:
|
|
username: str
|
|
hashed_password: str
|
|
refresh_tokens: list[str] = field(default_factory=list)
|
|
disabled: bool = False
|
|
|
|
@dataclass(slots=True)
|
|
class Address:
|
|
street: str
|
|
house_number: str
|
|
postal_code: str
|
|
city: str
|
|
country: str | None
|
|
|
|
@dataclass(slots=True)
|
|
class PublicKey:
|
|
bits: int
|
|
fingerprint: str
|
|
name: str
|
|
key_type: str
|
|
key: str
|
|
expires: date |