async def METHOD_NAME(self, *, title: str, year: int) -> AsyncIterator[models.Book]:
    result = await self._conn.stream(sqlalchemy.text(BOOKS_BY_TITLE_YEAR), {"p1": title, "p2": year})
    async for row in result:
        yield models.Book(
            book_id=row[0],
            author_id=row[1],
            isbn=row[2],
            book_type=row[3],
            title=row[4],
            year=row[5],
            available=row[6],
            tags=row[7],
        )