import { default as React } from 'react';
/** See PhoneInputProps.countries */
export interface CountryCode {
    /** Country display name, e.g. "Norway" */
    name: string;
    /** Calling code, unique key, e.g. "+47" */
    code: string;
    /** Flag emoji */
    flag: string;
}
/** See PhoneInputProps.onChange */
export interface PhoneInputChange {
    /** Full E.164-like number, e.g. "+4712345678" */
    fullNumber: string;
    /** National part only */
    localNumber: string;
    /** Selected country (or null) */
    country: CountryCode | null;
}
/** Phone input with RAC ComboBox country selector */
export interface PhoneInputProps {
    /** Form field name */
    name?: string;
    /** Visible label */
    label?: string;
    /** Help text */
    description?: string;
    /** Default calling code key (e.g. "+47") */
    defaultCode?: string;
    /** Custom country list (defaults to COUNTRY_CODES) */
    countries?: CountryCode[];
    /** Full international phone number (controlled) */
    value?: string;
    /** Field errors map */
    errors?: Record<string, {
        message: string;
    } | undefined>;
    /** Disable inputs */
    disabled?: boolean;
    /** Change callback with parsed parts */
    onChange?: (value: PhoneInputChange) => void;
    /** Test ID for the phone number input */
    testId?: string;
}
export declare function PhoneInput({ name, label, description, defaultCode, countries, value, errors, disabled, onChange, testId, }: PhoneInputProps): React.JSX.Element;
//# sourceMappingURL=PhoneInput.d.ts.map