AuthJsAccount: {
userId: string;
type:
| "oauth"
| "oidc"
| "email"
| "webauthn";
provider: string;
providerAccountId: string;
refresh_token?: string;
access_token?: string;
expires_at?: number;
token_type?: Lowercase<string>;
scope?: string;
id_token?: string;
session_state?: string;
}
An account as Auth.js reads it (
AdapterAccount). A type, not an interface, so it fits Auth.js's account, which allows more token fields. Fields the provider did not give are left out.