import type { NextAuthOptions } from "next-auth"; import TwitchProvider from "next-auth/providers/twitch"; export interface TwitchProfile extends Record { sub: string preferred_username: string email: string picture: string } export const options: NextAuthOptions = { providers: [ TwitchProvider({ clientId: process.env.TWITCH_CLIENT_ID as string, clientSecret: process.env.TWITCH_CLIENT_SECRET as string, authorization: { params: { scope: "openid user:read:email", claims: { id_token: { email: null, picture: null, preferred_username: null, }, }, }, }, idToken: true, profile(profile) { return { id: profile.sub, name: profile.preferred_username, email: profile.email, image: profile.picture, } }, }) ], secret: process.env.NEXTAUTH_SECRET }