from pydantic import BaseModel, EmailStr class User(BaseModel): id: str name: str surname: str phone: str email: EmailStr role: str status: str class CreateUser(BaseModel): email: EmailStr password: str class UpdateUser(BaseModel): name: str = None surname: str = None phone: str = None email: EmailStr = None role: str = None status: str = None class OTPVerification(BaseModel): email: EmailStr otp: str class ResetPassword(BaseModel): email: EmailStr newPassword: str class ChangePassword(BaseModel): currentPassword: str newPassword: str class DeleteUserRequest(BaseModel): password: str class TokenRequest(BaseModel): email: EmailStr class UserProfileData(BaseModel): id: str name: str surname: str phone: str email: str role: str status: str class UserProfileResponse(BaseModel): isSuccess: bool data: UserProfileData class CreateUser(BaseModel): email: EmailStr password: str class TokenRequest(BaseModel): email: EmailStr password: str class DeleteUserRequest(BaseModel): password: str class UpdateProfile(BaseModel): name: str = None surname: str = None class Config: schema_extra = { "example": { "name": "John", "surname": "Doe" } }