import type { User } from "./user.js";

/**
 * Réponse au login / register / refresh.
 * Le `accessToken` est stocké en mémoire côté SPA (cf. ADR-017).
 * Le `refreshToken` est en cookie httpOnly et n'est jamais visible ici.
 *
 * Les inputs (`LoginInput`, `RegisterInput`) sont définis depuis les schemas Zod
 * dans `schemas/auth.ts` (source unique de vérité pour valider et typer).
 */
export type AuthSession = {
  accessToken: string;
  /** ISO 8601, expiration du access token. */
  expiresAt: string;
  user: User;
};
