export interface PasswordPolicy { minLength?: number; targetLength?: number; requireLowercase?: boolean; requireUppercase?: boolean; requireDigit?: boolean; requireSymbol?: boolean; forbidSequences?: boolean; forbidRepeats?: boolean; forbidCommon?: boolean; } export interface PasswordAllowedChars { lowercase?: boolean; uppercase?: boolean; digits?: boolean; symbols?: boolean | string; } export interface PasswordStrengthThresholds { fair?: number; good?: number; strong?: number; } export type PasswordStrengthTier = 'weak' | 'fair' | 'good' | 'strong'; export interface PasswordStrengthInfo { score: number; tier: PasswordStrengthTier; satisfied: string[]; failing: string[]; nextTip: string | null; allTips: string[]; } export interface PasswordRule { id: string; weight: number; test: (value: string) => boolean; hint: (value: string) => string; } export declare const DEFAULT_COMMON_PASSWORDS: string[]; interface ComputeArgs { value: string; policy?: PasswordPolicy; allowedChars?: PasswordAllowedChars; customRules?: PasswordRule[]; commonPasswords?: string[]; useDefaultBlocklist?: boolean; thresholds?: PasswordStrengthThresholds; } export declare const computePasswordStrength: (args: ComputeArgs) => PasswordStrengthInfo; export declare const tierLabels: Record; export {};