import { PasswordSettingsData } from "../../../types/userSettings.js";
import { ZxcvbnResult } from "../../../types/passwords.js";
//#region src/internal/clerk-js/passwords/strength.d.ts
type zxcvbnFN = (password: string, userInputs?: (string | number)[]) => ZxcvbnResult;
type PasswordStrength = {
  state: 'excellent';
  result: ZxcvbnResult;
} | {
  state: 'pass' | 'fail';
  keys: string[];
  result: ZxcvbnResult;
};
type CreateValidatePasswordStrength = (options: Pick<PasswordSettingsData, 'min_zxcvbn_strength'> & {
  onResult?: (res: ZxcvbnResult) => void;
}) => (zxcvbn: zxcvbnFN) => (password: string) => PasswordStrength;
declare const createValidatePasswordStrength: CreateValidatePasswordStrength;
//#endregion
export { createValidatePasswordStrength };