import type { CompanyTypesValue } from '../../../../core/models/api/company-types-value';
import type { LegalEntityTypes } from '../../../../core/models/api/legal-entity-type';
import type { Translatable, TranslationKey } from '../../../../../types';
import type { CountryCode } from '../../../../types/datasets/country-code';
import type { TaxIdNumberType } from './countryIdNumberTypes';
interface PropsWithNoExemption {
    exemptedOption?: false;
    selected: TaxIdNumberType | undefined;
    setSelected: (type: TaxIdNumberType) => void;
}
interface PropsWithTaxIdExemption {
    exemptedOption: TranslationKey;
    selected: TaxIdNumberType | 'exempted' | undefined;
    setSelected: (type: TaxIdNumberType | 'exempted') => void;
}
type TaxIdNumberTypeSelectorProps = {
    country: CountryCode;
    companyType?: CompanyTypesValue | typeof LegalEntityTypes.TRUST | typeof LegalEntityTypes.INDIVIDUAL;
    isUsSoleProp?: boolean;
    errorMessage?: boolean | Translatable;
} & (PropsWithNoExemption | PropsWithTaxIdExemption);
export declare function TaxIdNumberTypeSelector({ country, companyType, selected, setSelected, exemptedOption, isUsSoleProp, errorMessage, }: TaxIdNumberTypeSelectorProps): import("preact/jsx-runtime").JSX.Element | null;
export {};
