UNPKG

zellige.js

Version:

A Moroccan utility library for working with CIN, phone numbers, currency, addresses, dates, and more.

48 lines (47 loc) 1.93 kB
import { ERRORS, type PhoneFormat, type PhoneInput, type PhoneValidationResult, type PhoneDetails } from '../types/phone-number'; /** * Validates a Moroccan phone number * @param phone Phone number to validate * @returns Validation result with details */ export declare function validatePhone(phone: PhoneInput): PhoneValidationResult; /** * Formats a phone number to specified format (NATIONAL, INTERNATIONAL, E164, RFC3966) * @param phone Phone number to format * @param format Desired format * @returns Formatted number or null if invalid */ export declare function formatPhone(phone: PhoneInput, format?: PhoneFormat): string | null; /** * Gets comprehensive details about a phone number including validation, type, formats * @param phone Phone number to analyze * @returns Detailed phone information */ export declare function getPhoneDetails(phone: string): PhoneDetails; /** * Extracts valid Moroccan phone numbers from text * @param text Text containing potential phone numbers * @returns Array of valid unique numbers in national format */ export declare function extractPhoneNumbers(text: string): string[]; /** * Masks a phone number for privacy (+212 XX ****** X) * @param phone Phone number to mask * @param maskChar Character for masking * @returns Masked number or null if invalid */ export declare function maskPhone(phone: string, maskChar?: string): string | null; /** * Compares two phone numbers for equality after normalization * @param phone1 First phone number * @param phone2 Second phone number * @returns True if numbers are equivalent */ export declare function arePhoneNumbersEqual(phone1: string, phone2: string): boolean; export { ERRORS }; /** * Sanitizes a phone number by removing non-numeric characters * @param phone Phone number to sanitize * @returns Sanitized number or null if invalid */ export declare function sanitizePhone(phone: PhoneInput): string | null;