export const ErrorCode: Readonly<{ INVALID_ARGUMENT: "INVALID_ARGUMENT"; INVALID_TOKEN: "INVALID_TOKEN"; EXPIRED: "EXPIRED"; SESSION_NOT_FOUND: "SESSION_NOT_FOUND"; }>; /** * Every recoverable failure raised by this package. Carries a stable * {@link ErrorCode} `code` (branch on this) and a `status` — the HTTP * response status a middleware layer would use when translating the * error into a response. * * @example * try { * const session = await sessions.verify(req) * } catch (err) { * if (err instanceof SessionError) { * if (err.code === ErrorCode.EXPIRED) return res.redirect('/login?expired=1') * } * throw err * } */ export class SessionError extends BaseError { static statuses: { INVALID_ARGUMENT: number; INVALID_TOKEN: number; EXPIRED: number; SESSION_NOT_FOUND: number; }; } import { BaseError } from '@exortek/shared/errors';