import type { BaseInnerFormProps } from '../../../../hooks/useForm/types';
import type { NsTranslationKey } from '../../../../../types';
import type { IndividualIdNumberType } from '../../../Shared/fields/IdFieldTypeSelector/countryIdNumberTypes';
import type { TaxInformationFieldSchema } from '../../../Shared/fields/TaxInformationField/types';
import type { JpAddressSchema } from '../../../Shared/forms/Address/localized/jp/jpAddressSchema';
import type { AddressSchema } from '../../../Shared/forms/Address/types';
import type { TaskType } from '../../../../stores/globalStore/taskTypes';
import type { CountryCode } from '../../../../types/datasets/country-code';
import type { ValidationRuleResults } from '../../../../utils/validation/types';
import type { IdentityNumberSchema } from '../../fields/IdentityNumber/type';
import type { AdditionalIdentityInfoSchema } from './Identity/Identity.types';
export interface AdditionalPersonalDetailsSchema extends AddressSchema, JpAddressSchema, IdentityNumberSchema, TaxInformationFieldSchema, AdditionalIdentityInfoSchema {
    birthDate?: string;
    nationality?: CountryCode;
    placeOfBirth?: string;
}
export interface AdditionalPersonalDetailsProps extends BaseInnerFormProps<AdditionalPersonalDetailsSchema> {
    country: CountryCode;
    taskType: TaskType;
    onResidencyCountryChange?(country: string): void;
}
export interface IdentityProps {
    country: CountryCode;
    additionalPersonalDetails: AdditionalPersonalDetailsProps;
    errors: ValidationRuleResults<IdentityNumberSchema>;
    idNumberType?: IndividualIdNumberType;
    registrationNumberType?: NsTranslationKey<'common'>;
    handleFieldChange: any;
}
