import type { VerifyIdNumberCall } from '../../../../api/entityVerifications/entityVerifications.types';
import type { IndividualIdNumberType } from '../../../Shared/fields/IdFieldTypeSelector/countryIdNumberTypes';
import type { FieldMetadata, NoParams, PerCountryFieldConfig } from '../../../../utils/fieldConfigurations';
import type { AsyncValidatorRules } from '../../../../utils/validation/types';
import type { AdditionalPersonalDetailsSchema } from '../../forms/AdditionalPersonalDetails/AdditionalPersonalDetails.types';
import type { IdentitySchema } from '../../forms/AdditionalPersonalDetails/Identity/Identity.types';
import type { BasicDetailsSchema } from '../../forms/BasicDetails/BasicDetails.types';
import type { IdentityNumberSchema } from './type';
export declare const getAsyncIdNumberValidationRule: (verifyIdNumber: VerifyIdNumberCall, additionalPersonalDetails?: AdditionalPersonalDetailsSchema, basicDetails?: BasicDetailsSchema) => AsyncValidatorRules<IdentityNumberSchema>;
export interface FieldConfigParams {
    idNumberType?: IndividualIdNumberType | 'idNumber';
}
export declare const defaultFieldMetadata: FieldMetadata<IdentityNumberSchema, 'idNumber'>;
export declare const defaultFieldConfig: PerCountryFieldConfig<IdentityNumberSchema, 'idNumber', FieldConfigParams>;
export declare const licenseCardNumberDefaultMetadata: FieldMetadata<IdentitySchema, 'licenseCardNumber'>;
export declare const licenseCardNumberDefaultConfig: PerCountryFieldConfig<IdentitySchema, 'licenseCardNumber', NoParams>;
export declare const idNumberExemptDefaultMetadata: FieldMetadata<IdentityNumberSchema, 'idNumberExempt'>;
export declare const idNumberExemptDefaultConfig: PerCountryFieldConfig<IdentityNumberSchema, 'idNumberExempt', NoParams>;
