async def METHOD_NAME(app: web.Application, wallet_id: WalletID) -> WalletDB:
    stmt = (
        select(
            wallets.c.wallet_id,
            wallets.c.name,
            wallets.c.description,
            wallets.c.owner,
            wallets.c.thumbnail,
            wallets.c.status,
            wallets.c.created,
            wallets.c.modified,
        )
        .select_from(wallets)
        .where(wallets.c.wallet_id == wallet_id)
    )
    async with get_database_engine(app).acquire() as conn:
        result = await conn.execute(stmt)
        row = await result.first()
        if row is None:
            raise WalletNotFoundError(reason=f"Wallet {wallet_id} not found.")
        return parse_obj_as(WalletDB, row)