@light-auth/core
Version:
light auth core framework agnostic, using arctic
23 lines (22 loc) • 1.06 kB
TypeScript
import type { LightAuthServerEnv } from "./light-auth-server-env";
import { type LightAuthSession, type LightAuthUser } from "./light-auth-session";
export interface LightAuthUserAdapter {
getUser: <Session extends LightAuthSession = LightAuthSession, User extends LightAuthUser<Session> = LightAuthUser<Session>>(args: {
env: LightAuthServerEnv;
basePath: string;
providerUserId: string | number;
[key: string]: unknown;
}) => User | null | Promise<User | null>;
setUser: <Session extends LightAuthSession = LightAuthSession, User extends LightAuthUser<Session> = LightAuthUser<Session>>(args: {
env: LightAuthServerEnv;
basePath: string;
user: User;
[key: string]: unknown;
}) => User | Promise<User>;
deleteUser: <Session extends LightAuthSession = LightAuthSession, User extends LightAuthUser<Session> = LightAuthUser<Session>>(args: {
env: LightAuthServerEnv;
basePath: string;
user: User;
[key: string]: unknown;
}) => Promise<void>;
}