import { Segment, FirstResponderStatus, MilitaryStatus, LowIncomeStatus, MedicalProfessionalStatus, RecentMoverStatus, VerificationStep, SuccessResponse, VerificationResponse } from './types';
import { Locales } from '../intl/locales';

export { Locales } from '../intl/locales';
/**
 * @description List of locales supported by SheerID
 */
export type Locale = (typeof Locales)[number];
export declare enum VerificationStepsEnum {
    collectStudentPersonalInfo = "collectStudentPersonalInfo",
    collectTeacherPersonalInfo = "collectTeacherPersonalInfo",
    collectMemberPersonalInfo = "collectMemberPersonalInfo",
    collectMilitaryStatus = "collectMilitaryStatus",
    collectActiveMilitaryPersonalInfo = "collectActiveMilitaryPersonalInfo",
    collectInactiveMilitaryPersonalInfo = "collectInactiveMilitaryPersonalInfo",
    collectSeniorPersonalInfo = "collectSeniorPersonalInfo",
    collectAgePersonalInfo = "collectAgePersonalInfo",
    collectFirstResponderPersonalInfo = "collectFirstResponderPersonalInfo",
    collectMedicalProfessionalPersonalInfo = "collectMedicalProfessionalPersonalInfo",
    collectEmployeePersonalInfo = "collectEmployeePersonalInfo",
    collectSocialSecurityNumber = "collectSocialSecurityNumber",
    cancelSocialSecurityNumber = "cancelSocialSecurityNumber",
    collectDriverLicensePersonalInfo = "collectDriverLicensePersonalInfo",
    collectGeneralIdentityPersonalInfo = "collectGeneralIdentityPersonalInfo",
    collectHybridIdentityPersonalInfo = "collectHybridIdentityPersonalInfo",
    collectLicensedProfessionalPersonalInfo = "collectLicensedProfessionalPersonalInfo",
    collectMoverPersonalInfo = "collectMoverPersonalInfo",
    collectLowIncomePersonalInfo = "collectLowIncomePersonalInfo",
    collectIdentifier = "collectIdentifier",
    collectPersonalInfo = "collectPersonalInfo",
    docUpload = "docUpload",
    pending = "pending",
    docReviewLimitExceeded = "docReviewLimitExceeded",
    success = "success",
    error = "error",
    sso = "sso",
    smsLoop = "smsLoop",
    emailLoop = "emailLoop",
    emailLoopCollectOrganizationEmail = "emailLoopCollectOrganizationEmail",
    completeAuthentication = "completeAuthentication",
    cancelEmailLoop = "cancelEmailLoop",
    idCheckLoop = "idCheckLoop",
    consolation = "consolation",
    override = "override",
    cancelDocUpload = "cancelDocUpload",
    missingRequiredMetadata = "missingRequiredMetadata",
    thirdPartyLoop = "thirdPartyLoop"
}
export declare const VerificationSteps: any;
export declare const CollectInfoSteps: readonly [VerificationStepsEnum.collectStudentPersonalInfo, VerificationStepsEnum.collectTeacherPersonalInfo, VerificationStepsEnum.collectMemberPersonalInfo, VerificationStepsEnum.collectMilitaryStatus, VerificationStepsEnum.collectActiveMilitaryPersonalInfo, VerificationStepsEnum.collectInactiveMilitaryPersonalInfo, VerificationStepsEnum.collectSeniorPersonalInfo, VerificationStepsEnum.collectAgePersonalInfo, VerificationStepsEnum.collectFirstResponderPersonalInfo, VerificationStepsEnum.collectMedicalProfessionalPersonalInfo, VerificationStepsEnum.collectEmployeePersonalInfo, VerificationStepsEnum.collectDriverLicensePersonalInfo, VerificationStepsEnum.collectGeneralIdentityPersonalInfo, VerificationStepsEnum.collectHybridIdentityPersonalInfo, VerificationStepsEnum.collectLicensedProfessionalPersonalInfo, VerificationStepsEnum.collectMoverPersonalInfo, VerificationStepsEnum.collectLowIncomePersonalInfo, VerificationStepsEnum.collectIdentifier, VerificationStepsEnum.collectPersonalInfo];
export type CollectInfoSteps = (typeof CollectInfoSteps)[number];
export declare function isCollectStep(step: VerificationStep): step is CollectInfoSteps;
export declare function isSuccessResponse(response: VerificationResponse): response is SuccessResponse;
export declare enum TryAgainStepsEnum {
    docUpload = "docUpload",
    pending = "pending",
    error = "error"
}
export declare const TryAgainSteps: any;
export declare enum MockStepsEnum {
    loading = "loading",
    collect = "collect"
}
export declare const MockSteps: any[];
export declare enum RewardDisplayEnum {
    TEXT = "TEXT",
    QR = "QR",
    PDF417 = "PDF417",
    UPC_A = "UPC_A",
    ITF = "ITF",
    CODE_128 = "CODE_128"
}
export declare enum SegmentToStepMap {
    student = "collectStudentPersonalInfo",
    military = "collectMilitaryStatus",
    teacher = "collectTeacherPersonalInfo",
    firstResponder = "collectFirstResponderPersonalInfo",
    senior = "collectSeniorPersonalInfo",
    age = "collectAgePersonalInfo",
    medical = "collectMedicalProfessionalPersonalInfo",
    recentMover = "collectMoverPersonalInfo",
    licensedProfessional = "collectLicensedProfessionalPersonalInfo",
    identity = "collectGeneralIdentityPersonalInfo",
    member = "collectMemberPersonalInfo"
}
export declare enum SegmentEnum {
    STUDENT = "student",
    MILITARY = "military",
    TEACHER = "teacher",
    MEMBER = "member",
    SENIOR = "senior",
    AGE = "age",
    FIRST_RESPONDER = "firstResponder",
    MEDICAL = "medical",
    EMPLOYMENT = "employment",
    IDENTITY = "identity",
    LICENSED_PROFESSIONAL = "licensedProfessional",
    RECENT_MOVER = "recentMover",
    LOW_INCOME = "lowIncome"
}
export declare const Segments: Segment[];
export declare enum SubSegmentEnum {
    ACTIVE_DUTY = "activeDuty",
    VETERAN = "veteran",
    RESERVIST = "reservist",
    MILITARY_RETIREE = "retiree",
    MILITARY_FAMILY = "militaryFamily",
    GOLD_STAR_FAMILY = "goldStarFamily",
    FIREFIGHTER = "fireFighter",
    POLICE = "police",
    EMT = "emt",
    NURSE = "nurse",
    DRIVER_LICENSE = "driverLicense",
    GENERAL_IDENTITY = "generalIdentity",
    HYBRID_IDENTITY = "hybridIdentity",
    HOME_BUYER = "homeBuyer",
    OTHER_MOVER = "otherMover",
    LICENSED_COSMETOLOGIST = "licensedCosmetologist",
    LICENSED_REAL_ESTATE_AGENT = "licensedRealEstateAgent",
    VETERINARIAN = "veterinarian",
    SNAP_BENEFITS = "snapBenefits",
    OTHER_GOVERNMENT_ASSISTANCE = "otherGovernmentAssistance",
    CHILD_CARE_WORKER = "childCareWorker",
    LIBRARIAN = "librarian",
    INTERIOR_DESIGNER = "interiorDesigner",
    ARCHITECT = "architect",
    GENERAL_CONTRACTOR = "generalContractor",
    NUTRITION_PROFESSIONAL = "nutritionProfessional"
}
export declare const SubSegments: any;
export declare const MilitaryStatusDefaultMessagesEnum: {
    [k in MilitaryStatus]: string;
};
/**
 * @deprecated Do org search with `?tag={status}`, instead.
 * Kept here for es6 export, for now
 * e.g. ?tag=RESERVIST&country=US
 */
export declare const militaryReservistOrgNames: string[];
export declare const FirstResponderStatusDefaultMessagesEnum: {
    [k in FirstResponderStatus]: string;
};
export declare const MedicalProfessionalStatusDefaultMessagesEnum: {
    [k in MedicalProfessionalStatus]: string;
};
export declare const RecentMoverStatusDefaultMessagesEnum: {
    [k in RecentMoverStatus]: string;
};
export declare const LowIncomeStatusDefaultMessagesEnum: {
    [k in LowIncomeStatus]: string;
};
export declare const MilitaryStatusDefaultMessages: any;
export declare const FirstResponderStatusDefaultMessages: any;
export declare const MedicalStatusdefaultMessages: any;
export declare const RecentMoverStatusDefaultMessages: any;
export declare const LowIncomeStatusDefaultMessages: any;
export declare enum FieldIdEnum {
    firstName = "firstName",
    lastName = "lastName",
    memberId = "memberId",
    organization = "organization",
    birthDate = "birthDate",
    email = "email",
    phoneNumber = "phoneNumber",
    postalCode = "postalCode",
    address1 = "address1",
    city = "city",
    country = "country",
    state = "state",
    dischargeDate = "dischargeDate",
    activeDutyStartDate = "activeDutyStartDate",
    docUpload = "docUpload",
    status = "status",
    statuses = "statuses",
    marketConsentValue = "marketConsentValue",
    socialSecurityNumber = "socialSecurityNumber",
    carrierConsentValue = "carrierConsentValue",
    driverLicenseNumber = "driverLicenseNumber",
    ebtCardNumber = "ebtCardNumber",
    overrideCode = "overrideCode",
    organizationEmail = "organizationEmail",
    authenticationCode = "authenticationCode",
    cvecNumber = "cvecNumber"
}
export declare const FieldIds: any;
export declare enum HookNameEnum {
    ON_VERIFICATION_READY = "ON_VERIFICATION_READY",
    ON_VERIFICATION_SUCCESS = "ON_VERIFICATION_SUCCESS",
    ON_VERIFICATION_STEP_CHANGE = "ON_VERIFICATION_STEP_CHANGE",
    ON_FORM_LOCALE_CHANGE = "ON_FORM_LOCALE_CHANGE"
}
export declare const HookNames: any;
/**
 * Add to the list of known locales for more helpful runtime checks.
 */
export declare const registerAdditionalLocales: (locales: Locale[]) => void;
export declare enum StateEnum {
    AK = "AK",
    AL = "AL",
    AR = "AR",
    AZ = "AZ",
    AS = "AS",
    CA = "CA",
    CO = "CO",
    CT = "CT",
    DC = "DC",
    DE = "DE",
    FL = "FL",
    GA = "GA",
    GU = "GU",
    HI = "HI",
    IA = "IA",
    ID = "ID",
    IL = "IL",
    IN = "IN",
    KS = "KS",
    KY = "KY",
    LA = "LA",
    MA = "MA",
    MD = "MD",
    ME = "ME",
    MI = "MI",
    MN = "MN",
    MO = "MO",
    MS = "MS",
    MT = "MT",
    NC = "NC",
    ND = "ND",
    NE = "NE",
    NH = "NH",
    NJ = "NJ",
    NM = "NM",
    NV = "NV",
    NY = "NY",
    OH = "OH",
    OK = "OK",
    OR = "OR",
    PA = "PA",
    PR = "PR",
    RI = "RI",
    SC = "SC",
    SD = "SD",
    TN = "TN",
    TX = "TX",
    UT = "UT",
    VA = "VA",
    VI = "VI",
    VT = "VT",
    WA = "WA",
    WI = "WI",
    WV = "WV",
    WY = "WY"
}
export declare enum OnfidoReportNames {
    DOCUMENT = "document",
    FACIAL_SIMILARITY_MOTION = "facial_similarity_motion"
}
export declare enum OnfidoDocumentTypes {
    PASSPORT = "passport",
    NATIONAL_IDENTITY_CARD = "national_identity_card",
    DRIVING_LICENCE = "driving_licence",
    RESIDENCE_PERMIT = "residence_permit"
}
export declare enum IdCheckLoopServiceType {
    ID_CHECK = "ID_CHECK",
    ID_CHECK_LIVENESS = "ID_CHECK_LIVENESS"
}
export declare enum ThirdPartyLoopProvider {
    SIGNZY = "signzy"
}
