import type { PmUser } from '../../../domain/generated/output.js';
import type { IPmUserRepository } from '../../ports/output/repositories/pm-user-repository.interface.js';
export interface RegisterUserInput {
    email: string;
    password: string;
    displayName: string;
}
export type RegisterUserResult = {
    ok: true;
    user: Omit<PmUser, 'passwordHash'>;
} | {
    ok: false;
    error: string;
};
export declare class RegisterUserUseCase {
    private readonly userRepo;
    constructor(userRepo: IPmUserRepository);
    execute(input: RegisterUserInput): Promise<RegisterUserResult>;
}
/**
 * Verify a password against a stored hash.
 * Exported for use by the login use case.
 */
export declare function verifyPassword(password: string, storedHash: string): boolean;
//# sourceMappingURL=register-user.use-case.d.ts.map