/** * PhoneField type definitions * Pure types without external dependencies */ /** * Field configuration for flat output mode * All fields are optional. When not specified, default names will be used. * Set to empty string "" or null to skip storing that field. */ export interface PhoneFieldConfig { /** Phone number field name. Defaults to 'name' prop in flat mode. */ phoneNumberName?: string | null; /** Country code field name (e.g., 'US', 'CN'). Defaults to 'countryCode'. Set to "" or null to skip. */ countryCodeName?: string | null; /** Dial code field name (e.g., '+1', '+86'). Defaults to 'dialCode'. Set to "" or null to skip. */ dialCodeName?: string | null; /** Cleaned phone number field name (digits only). Defaults to 'phoneNumberCleaned'. Set to "" or null to skip. */ phoneNumberCleanedName?: string | null; } /** * Parsed phone value structure */ export interface ParsedPhoneValue { countryCode: string | undefined; dialCode: string | undefined; phoneNumber: string; } /** * Phone value type used in nested mode * Also used for type-safe comparisons */ export interface PhoneValue { countryCode?: string; dialCode?: string; phoneNumber?: string; /** Legacy field name for backward compatibility */ number?: string; } /** * Country configuration for phone field * Controls country list, filtering, and display behavior */ export interface PhoneCountryConfig { /** Default country code (ISO 3166-1 alpha-2). If not specified, uses first country in the list. */ defaultCountry?: string; /** Preferred countries (shown at top of list) */ preferredCountries?: string[]; /** Only allow these countries (if specified, filters out all others) */ onlyCountries?: string[]; /** Exclude these countries from the list */ excludeCountries?: string[]; /** Disable country selector (shows as read-only adornment) */ disableCountry?: boolean; /** Hide country selector completely (no selector, no adornment) */ hideCountry?: boolean; } //# sourceMappingURL=types.d.ts.map