from datetime import datetime from typing import Optional from pydantic import BaseModel from app.models.transaction import TransactionStatus, TransactionType class TransactionBase(BaseModel): amount: float transaction_type: TransactionType status: TransactionStatus = TransactionStatus.PENDING reference: Optional[str] = None bet_id: Optional[int] = None class TransactionCreate(BaseModel): amount: float transaction_type: TransactionType = TransactionType.DEPOSIT reference: Optional[str] = None class TransactionUpdate(BaseModel): status: TransactionStatus class Transaction(TransactionBase): id: int user_id: int created_at: datetime class Config: from_attributes = True