import { ConfigService } from '@nestjs/config';
import { DatabaseService } from '../../common/database/database.service';
import { AuthSessionsService, type SessionContext } from './auth-sessions.service';
import type { LoginDto } from './dto/login.dto';
import type { RegisterDto } from './dto/register.dto';
export declare class AuthService {
    private readonly database;
    private readonly sessions;
    private readonly config;
    constructor(database: DatabaseService, sessions: AuthSessionsService, config: ConfigService);
    register(input: RegisterDto, context: SessionContext): Promise<{
        user: {
            id: string;
            email: string;
            displayName: string | null;
            role: "USER" | "ADMIN";
        };
        session: import("./auth-sessions.service").CreatedSession;
    }>;
    login(input: LoginDto, context: SessionContext): Promise<{
        user: {
            id: string;
            email: string;
            displayName: string | null;
            role: "USER" | "ADMIN";
        };
        session: import("./auth-sessions.service").CreatedSession;
    }>;
    private isUniqueViolation;
}
