from pydantic import BaseModel class DeviceBody(BaseModel): brand: str = "" model: str = "" os_version: str = "" device_type: str = "" physical: bool | None = None device_id: str = "" fingerprint: str = "" app_version: str = "" app_build: str = "" language: str = "" class GuestBody(BaseModel): device: DeviceBody | None = None class PasswordBody(BaseModel): email: str password: str device: DeviceBody | None = None class AdbBody(BaseModel): serial: str = "" adb: str = "" device_source: str = "device" device: DeviceBody | None = None class SessionBody(BaseModel): token: str device: DeviceBody | None = None refresh: bool = False class ProxyBody(BaseModel): mode: str = "off" scheme: str = "http" host: str = "" port: str = "" username: str = "" password: str = "" def device_payload(body: DeviceBody | None) -> dict | None: if body is None: return None return body.model_dump()