@modern-kit/utils
Version:
22 lines (20 loc) • 707 B
TypeScript
interface ContainsOptions {
lowerCase?: boolean;
number?: boolean;
specialCharacters?: boolean;
upperCase?: boolean;
}
type ErrorReason = keyof ContainsOptions | 'hangul' | 'forbidden' | 'whiteSpace' | 'consecutiveCharacters' | 'length';
interface IsValidPasswordOptions {
containsOptions: ContainsOptions;
minLength: number;
maxLength: number;
maxRepeatChars: number;
forbiddenPasswords: string[] | readonly string[];
}
interface IsValidPasswordReturnType {
isValid: boolean;
errorReason: ErrorReason | null;
}
declare function isValidPassword(password: string, options?: Partial<IsValidPasswordOptions>): IsValidPasswordReturnType;
export { isValidPassword };