import type { AuthConfig } from '../config/AuthConfig.js'; import type { Hasher } from './Hasher.js'; export interface HashInfo { readonly driver: string; } /** * Factory for bcrypt / argon2 / scrypt hashers driven by config. */ export declare class HashManager { private readonly config; private readonly defaultDriver; private readonly drivers; /** * @param config - Hashing section from {@link AuthConfig}. * @param defaultDriver - Key such as `bcrypt`, `argon2`, or `scrypt`. */ constructor(config: AuthConfig['hashing'], defaultDriver: string); /** * @param name - Driver key; defaults to configured default. * @returns Hasher implementation. */ driver(name?: string): Hasher; /** * @inheritdoc Hasher.make — uses default driver. */ make(value: string): Promise; /** * @inheritdoc Hasher.check — uses default driver. */ check(value: string, hashedValue: string): Promise; /** * @inheritdoc Hasher.needsRehash — uses default driver. */ needsRehash(hashedValue: string): boolean; /** * @param hashedValue - Stored hash. * @returns Minimal metadata for diagnostics. */ info(hashedValue: string): HashInfo; private createDriver; } //# sourceMappingURL=HashManager.d.ts.map