UNPKG

tl-shared-security

Version:

Enterprise-grade security module for frontend and backend applications with comprehensive protection against XSS, CSRF, SQL injection, and other security vulnerabilities

40 lines 1.4 kB
export interface PasswordPolicyOptions { minLength?: number; requireUppercase?: boolean; requireLowercase?: boolean; requireNumbers?: boolean; requireSpecialChars?: boolean; maxRepeatingChars?: number; disallowCommonPasswords?: boolean; disallowContextSpecificWords?: boolean; contextSpecificWords?: string[]; } export interface PasswordValidationResult { isValid: boolean; errors: string[]; } export declare class PasswordPolicyService { private readonly defaultOptions; private readonly commonPasswords; /** * Validates a password against the policy * @param password - Password to validate * @param options - Password policy options * @returns Validation result */ validate(password: string, options?: PasswordPolicyOptions): PasswordValidationResult; /** * Generates a password strength score (0-100) * @param password - Password to evaluate * @returns Strength score (0-100) */ calculateStrength(password: string): number; /** * Gets a strength label based on the score * @param score - Strength score (0-100) * @returns Strength label */ getStrengthLabel(score: number): 'very weak' | 'weak' | 'moderate' | 'strong' | 'very strong'; } export declare const passwordPolicyService: PasswordPolicyService; //# sourceMappingURL=password-policy.service.d.ts.map