chat_back/app/chat/shemas.py
2024-06-08 17:50:47 +05:00

81 lines
1.2 KiB
Python

from datetime import datetime
from pydantic import BaseModel
class SMessage(BaseModel):
id: int
message: str | None = None
image_url: str | None = None
chat_id: int
user_id: int
username: str
created_at: datetime
avatar_image: str
answer_id: int | None
answer_message: str | None
class SMessageList(BaseModel):
messages: list[SMessage | None]
class SLastMessages(BaseModel):
messages_loaded: int
messages_to_get: int
class SPinnedChat(BaseModel):
user_id: int
chat_id: int
class SChat(BaseModel):
chat_id: int
chat_for: int
chat_name: str
avatar_image: str
class SAllowedChats(BaseModel):
allowed_chats: list[SChat | None]
class SPinnedChats(BaseModel):
pinned_chats: list[SChat]
class SPinnedMessages(BaseModel):
pinned_messages: list[SMessage] | None
class SSendMessage(BaseModel):
flag: str
message: str
image_url: str | None
answer: int | None
class SDeleteMessage(BaseModel):
flag: str
user_id: int
id: int
class SEditMessage(BaseModel):
flag: str
user_id: int
id: int
new_message: str
new_image_url: str
class SPinMessage(BaseModel):
flag: str
id: int
user_id: int
class SUnpinMessage(BaseModel):
flag: str
id: int