Tomer Aberbach
11/25/2021, 2:12 AMexport async function getUser(
request: Request,
{ include }: { include?: Prisma.UserInclude } = {},
) {
const session = await getUserSession(request)
const userId = session.get(`userId`)
if (!userId || typeof userId !== `string`) {
return null
}
return db.user.findUnique({ where: { id: userId }, include })
}
Now, no matter what I do, calling getUser(request, { include: { classes: true } })
does not get typed as Promise<(User & { classes: Class[] }) | null>
. It gets typed as Promise<(User & {}) | null>
. I can't figure out how to make it infer the return type properly based on the given include
. Any help would be greatly appreciated!