UNPKG

@mikkelscheike/email-provider-links

Version:

TypeScript library for email provider detection with 93 providers (207 domains), concurrent DNS resolution, optimized performance, 94.65% test coverage, and enterprise security for login and password reset flows

47 lines 1.63 kB
/** * IDN (Internationalized Domain Names) utilities * Zero-dependency implementation for domain name handling */ /** * Convert domain to Punycode format * @param domain Domain name to convert * @returns Punycode encoded domain */ export declare function domainToPunycode(domain: string): string; /** * Convert email address's domain to Punycode * @param email Email address to convert * @returns Email with Punycode encoded domain */ export declare function emailToPunycode(email: string): string; /** * Error codes for IDN validation * These can be used as keys for translation systems */ export declare enum IDNValidationError { MISSING_INPUT = "MISSING_INPUT", EMAIL_TOO_LONG = "EMAIL_TOO_LONG", MISSING_AT_SYMBOL = "MISSING_AT_SYMBOL", LOCAL_PART_EMPTY = "LOCAL_PART_EMPTY", LOCAL_PART_TOO_LONG = "LOCAL_PART_TOO_LONG", LOCAL_PART_INVALID = "LOCAL_PART_INVALID", DOMAIN_EMPTY = "DOMAIN_EMPTY", DOMAIN_TOO_LONG = "DOMAIN_TOO_LONG", DOMAIN_INVALID_FORMAT = "DOMAIN_INVALID_FORMAT", MISSING_TLD = "MISSING_TLD", NUMERIC_TLD = "NUMERIC_TLD", INVALID_ENCODING = "INVALID_ENCODING" } /** * Validates an email address according to international standards (IDNA) * This implementation follows RFC 5321, 5322, and 6530 standards for email addresses * * @param email The email address to validate * @returns Error information if validation fails, undefined if valid */ export declare function validateInternationalEmail(email: string): { type: 'IDN_VALIDATION_ERROR'; code: IDNValidationError; message: string; } | undefined; //# sourceMappingURL=idn.d.ts.map