import type { FastifyRequest, FastifyReply } from 'fastify'; import type { DatabaseClient } from '../db/client.js'; import type { PermissionRegistry } from './permission-registry.js'; import type { RequestContext } from './types.js'; export declare function generateToken(): string; export declare function createAuthHook(db: DatabaseClient, permissionRegistry: PermissionRegistry): (request: FastifyRequest, _reply: FastifyReply) => Promise; export declare function getAuthContext(request: FastifyRequest): RequestContext; export interface SessionCreateBody { email: string; password: string; } export declare function createSessionHandler(db: DatabaseClient): (request: FastifyRequest, reply: FastifyReply) => Promise; export declare function deleteSessionHandler(db: DatabaseClient): (request: FastifyRequest, reply: FastifyReply) => Promise; export declare function regenerateSessionToken(db: DatabaseClient, userId: string): Promise; //# sourceMappingURL=session.d.ts.map