import { type E164PhoneNumber } from './phone'; import { type ArrayOrValue } from '../array/array'; import { type EmailAddressDomain } from './domain'; import { type EmailAddress } from './email'; import { type Factory } from '../getter'; import { type NumberFactory } from '../number/factory'; /** * Configuration for generating random email addresses. */ export interface RandomEmailFactoryConfig { /** * Set of email prefixes to use */ prefixes?: ArrayOrValue; /** * domains to use */ domains?: ArrayOrValue; /** * Random number generator. Negative numbers are treated as an "ignored" value. */ numberFactory?: NumberFactory; } /** * Default configuration that uses incrementing numbers and a test domain for safety in tests. */ export declare const DEFAULT_RANDOM_EMAIL_FACTORY_CONFIG: RandomEmailFactoryConfig; export type RandomEmailFactory = Factory; /** * Creates a factory that generates random email addresses using configurable prefixes, domains, and number generators. * * @param inputConfig - Optional configuration overrides * @returns A factory function that produces random email address strings */ export declare function randomEmailFactory(inputConfig?: RandomEmailFactoryConfig): RandomEmailFactory; /** * Configuration for generating random E.164 phone numbers. */ export interface RandomPhoneNumberFactoryConfig { /** * Set of interntional numbers to use. */ internationalAreaCodes?: ArrayOrValue; /** * Random number generator. Should generate a 10-digit number. Generated numbers are not validated. */ numberFactory?: NumberFactory; } /** * Default configuration using US area codes and random 7-digit number generation. */ export declare const DEFAULT_RANDOM_PHONE_NUMBER_FACTORY_CONFIG: RandomPhoneNumberFactoryConfig; export type RandomPhoneNumberFactory = Factory; /** * Creates a factory that generates random E.164 phone numbers using configurable area codes and number generators. * * @param inputConfig - Optional configuration overrides * @returns A factory function that produces random E.164 phone number strings */ export declare function randomPhoneNumberFactory(inputConfig?: RandomPhoneNumberFactoryConfig): RandomPhoneNumberFactory;