Files
agentic-dev/packages/core/src/application/services/auth.service.interface.ts

15 lines
597 B
TypeScript

import type { Cookie } from "@/entities/models/cookie";
import type { Session } from "@/entities/models/session";
import type { User } from "@/entities/models/user";
export interface IAuthenticationService {
generateUserId(): string;
hashPassword(password: string): Promise<string>;
verifyPassword(hash: string, password: string): Promise<boolean>;
validateSession(
sessionId: string
): Promise<{ user: User; session: Session }>;
createSession(user: User): Promise<{ session: Session; cookie: Cookie }>;
invalidateSession(sessionId: string): Promise<{ blankCookie: Cookie }>;
}