You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					171 lines
				
				6.8 KiB
			
		
		
			
		
	
	
					171 lines
				
				6.8 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								import {
							 | 
						||
| 
								 | 
							
								  MetadataJson,
							 | 
						||
| 
								 | 
							
								  Examples,
							 | 
						||
| 
								 | 
							
								  PhoneNumber,
							 | 
						||
| 
								 | 
							
								  E164Number,
							 | 
						||
| 
								 | 
							
								  CountryCallingCode,
							 | 
						||
| 
								 | 
							
								  CountryCode,
							 | 
						||
| 
								 | 
							
								  CarrierCode,
							 | 
						||
| 
								 | 
							
								  NationalNumber,
							 | 
						||
| 
								 | 
							
								  Extension,
							 | 
						||
| 
								 | 
							
								  ParseError,
							 | 
						||
| 
								 | 
							
								  NumberFoundLegacy,
							 | 
						||
| 
								 | 
							
								  NumberFound,
							 | 
						||
| 
								 | 
							
								  NumberType,
							 | 
						||
| 
								 | 
							
								  NumberFormat,
							 | 
						||
| 
								 | 
							
								  NumberingPlan,
							 | 
						||
| 
								 | 
							
								  ValidatePhoneNumberLengthResult
							 | 
						||
| 
								 | 
							
								} from './types';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export {
							 | 
						||
| 
								 | 
							
								  MetadataJson,
							 | 
						||
| 
								 | 
							
								  Examples,
							 | 
						||
| 
								 | 
							
								  PhoneNumber,
							 | 
						||
| 
								 | 
							
								  E164Number,
							 | 
						||
| 
								 | 
							
								  CountryCallingCode,
							 | 
						||
| 
								 | 
							
								  CountryCode,
							 | 
						||
| 
								 | 
							
								  CarrierCode,
							 | 
						||
| 
								 | 
							
								  NationalNumber,
							 | 
						||
| 
								 | 
							
								  Extension,
							 | 
						||
| 
								 | 
							
								  ParseError,
							 | 
						||
| 
								 | 
							
								  NumberFoundLegacy,
							 | 
						||
| 
								 | 
							
								  NumberFound,
							 | 
						||
| 
								 | 
							
								  NumberFormat,
							 | 
						||
| 
								 | 
							
								  NumberType,
							 | 
						||
| 
								 | 
							
								  NumberingPlan,
							 | 
						||
| 
								 | 
							
								  ValidatePhoneNumberLengthResult
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								type FormatExtension = (number: string, extension: string, metadata: MetadataJson) => string
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								type FormatNumberOptionsWithoutIDD = {
							 | 
						||
| 
								 | 
							
								  v2?: boolean;
							 | 
						||
| 
								 | 
							
								  formatExtension?: FormatExtension;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export type FormatNumberOptions = {
							 | 
						||
| 
								 | 
							
								  v2?: boolean;
							 | 
						||
| 
								 | 
							
								  fromCountry?: CountryCode;
							 | 
						||
| 
								 | 
							
								  humanReadable?: boolean;
							 | 
						||
| 
								 | 
							
								  formatExtension?: FormatExtension;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Legacy.
							 | 
						||
| 
								 | 
							
								export type ParseNumberOptions = {
							 | 
						||
| 
								 | 
							
								  defaultCountry?: CountryCode;
							 | 
						||
| 
								 | 
							
								  extended?: boolean;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export interface ParsedNumber {
							 | 
						||
| 
								 | 
							
								  countryCallingCode?: CountryCallingCode;
							 | 
						||
| 
								 | 
							
								  country: CountryCode;
							 | 
						||
| 
								 | 
							
								  phone: NationalNumber;
							 | 
						||
| 
								 | 
							
								  ext?: Extension;
							 | 
						||
| 
								 | 
							
								  possible?: boolean;
							 | 
						||
| 
								 | 
							
								  valid?: boolean;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// `parsePhoneNumber()` named export has been renamed to `parsePhoneNumberWithError()`.
							 | 
						||
| 
								 | 
							
								export function parsePhoneNumber(text: string, defaultCountry?: CountryCode): PhoneNumber;
							 | 
						||
| 
								 | 
							
								export function parsePhoneNumberWithError(text: string, defaultCountry?: CountryCode): PhoneNumber;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// `parsePhoneNumberFromString()` named export is now considered legacy:
							 | 
						||
| 
								 | 
							
								// it has been promoted to a default export due to being too verbose.
							 | 
						||
| 
								 | 
							
								export function parsePhoneNumberFromString(text: string, defaultCountry?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string, extract?: boolean }): PhoneNumber | undefined;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export default parsePhoneNumberFromString;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function isValidPhoneNumber(text: string, defaultCountry?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string }): boolean;
							 | 
						||
| 
								 | 
							
								export function isPossiblePhoneNumber(text: string, defaultCountry?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string }): boolean;
							 | 
						||
| 
								 | 
							
								export function validatePhoneNumberLength(text: string, defaultCountry?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string }): ValidatePhoneNumberLengthResult | undefined;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// `parse()` and `parseCustom` are deprecated.
							 | 
						||
| 
								 | 
							
								// Use `parseNumber()` and `parseNumberCustom()` instead.
							 | 
						||
| 
								 | 
							
								export function parse(text: string, options?: CountryCode | ParseNumberOptions): ParsedNumber;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function parseNumber(text: string, options?: CountryCode | ParseNumberOptions): ParsedNumber | {};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// `format()` and `formatCustom` are deprecated.
							 | 
						||
| 
								 | 
							
								// Use `formatNumber()` and `formatNumberCustom()` instead.
							 | 
						||
| 
								 | 
							
								export function format(parsedNumber: ParsedNumber, format: NumberFormat): string;
							 | 
						||
| 
								 | 
							
								export function format(phone: NationalNumber, format: NumberFormat): string;
							 | 
						||
| 
								 | 
							
								export function format(phone: NationalNumber, country: CountryCode, format: NumberFormat): string;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function formatNumber(parsedNumber: ParsedNumber, format: NumberFormat, options?: FormatNumberOptions): string;
							 | 
						||
| 
								 | 
							
								export function formatNumber(phone: NationalNumber, format: NumberFormat, options?: FormatNumberOptions): string;
							 | 
						||
| 
								 | 
							
								export function formatNumber(phone: NationalNumber, country: CountryCode, format: NumberFormat, options?: FormatNumberOptions): string;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function getNumberType(parsedNumber: ParsedNumber): NumberType;
							 | 
						||
| 
								 | 
							
								export function getNumberType(phone: NationalNumber, country?: CountryCode): NumberType;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function getExampleNumber(country: CountryCode, examples: Examples): PhoneNumber | undefined;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function isPossibleNumber(parsedNumber: ParsedNumber): boolean;
							 | 
						||
| 
								 | 
							
								export function isPossibleNumber(phone: NationalNumber, country?: CountryCode): boolean;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function isValidNumber(parsedNumber: ParsedNumber): boolean;
							 | 
						||
| 
								 | 
							
								export function isValidNumber(phone: NationalNumber, country?: CountryCode): boolean;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function isValidNumberForRegion(phone: NationalNumber, country: CountryCode): boolean;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Deprecated.
							 | 
						||
| 
								 | 
							
								export function findParsedNumbers(text: string, options?: CountryCode | { defaultCountry?: CountryCode }): NumberFoundLegacy[];
							 | 
						||
| 
								 | 
							
								export function searchParsedNumbers(text: string, options?: CountryCode | { defaultCountry?: CountryCode }): IterableIterator<NumberFoundLegacy>;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Deprecated.
							 | 
						||
| 
								 | 
							
								export class ParsedNumberSearch {
							 | 
						||
| 
								 | 
							
								  constructor(text: string, options?: { defaultCountry?: CountryCode });
							 | 
						||
| 
								 | 
							
								  hasNext(): boolean;
							 | 
						||
| 
								 | 
							
								  next(): NumberFoundLegacy | undefined;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function findNumbers(text: string, options?: CountryCode): NumberFoundLegacy[];
							 | 
						||
| 
								 | 
							
								export function searchNumbers(text: string, options?: CountryCode): IterableIterator<NumberFoundLegacy>;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function findNumbers(text: string, options?: { defaultCountry?: CountryCode, v2: true }): NumberFound[];
							 | 
						||
| 
								 | 
							
								export function searchNumbers(text: string, options?: { defaultCountry?: CountryCode, v2: true }): IterableIterator<NumberFound>;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function findPhoneNumbersInText(text: string, options?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string }): NumberFound[];
							 | 
						||
| 
								 | 
							
								export function searchPhoneNumbersInText(text: string, options?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string }): IterableIterator<NumberFound>;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export class PhoneNumberMatcher {
							 | 
						||
| 
								 | 
							
								  constructor(text: string, options?: { defaultCountry?: CountryCode, v2: true });
							 | 
						||
| 
								 | 
							
								  hasNext(): boolean;
							 | 
						||
| 
								 | 
							
								  next(): NumberFound | undefined;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function getCountries(): CountryCode[];
							 | 
						||
| 
								 | 
							
								export function getCountryCallingCode(countryCode: CountryCode): CountryCallingCode;
							 | 
						||
| 
								 | 
							
								// Deprecated.
							 | 
						||
| 
								 | 
							
								export function getPhoneCode(countryCode: CountryCode): CountryCallingCode;
							 | 
						||
| 
								 | 
							
								export function getExtPrefix(countryCode: CountryCode): string;
							 | 
						||
| 
								 | 
							
								export function isSupportedCountry(countryCode: string): boolean;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function formatIncompletePhoneNumber(number: string, countryCode?: CountryCode): string;
							 | 
						||
| 
								 | 
							
								export function parseIncompletePhoneNumber(text: string): string;
							 | 
						||
| 
								 | 
							
								export function parsePhoneNumberCharacter(character: string): string;
							 | 
						||
| 
								 | 
							
								export function parseDigits(character: string): string;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export class AsYouType {
							 | 
						||
| 
								 | 
							
								  constructor(defaultCountryCode?: CountryCode | { defaultCountry?: CountryCode, defaultCallingCode?: string });
							 | 
						||
| 
								 | 
							
								  input(text: string): string;
							 | 
						||
| 
								 | 
							
								  reset(): void;
							 | 
						||
| 
								 | 
							
								  country: CountryCode | undefined;
							 | 
						||
| 
								 | 
							
								  getNumber(): PhoneNumber | undefined;
							 | 
						||
| 
								 | 
							
								  getNumberValue(): E164Number | undefined;
							 | 
						||
| 
								 | 
							
								  getNationalNumber(): string;
							 | 
						||
| 
								 | 
							
								  getChars(): string;
							 | 
						||
| 
								 | 
							
								  getTemplate(): string;
							 | 
						||
| 
								 | 
							
								  getCallingCode(): string | undefined;
							 | 
						||
| 
								 | 
							
								  getCountry(): CountryCode | undefined;
							 | 
						||
| 
								 | 
							
								  isInternational(): boolean;
							 | 
						||
| 
								 | 
							
								  isPossible(): boolean;
							 | 
						||
| 
								 | 
							
								  isValid(): boolean;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export class Metadata {
							 | 
						||
| 
								 | 
							
								  constructor();
							 | 
						||
| 
								 | 
							
								  selectNumberingPlan(country: CountryCode): void;
							 | 
						||
| 
								 | 
							
								  numberingPlan?: NumberingPlan;
							 | 
						||
| 
								 | 
							
								}
							 |