from enum import Enum


class PhoneNumberType(Enum):
    """
    Enum for Equifax phone number types
    """

    HOME = "HOME"
    OFFICE = "OFFICE"
    MOBILE = "MOBILE"


class State(Enum):
    """
    Enum for Equifax States and state codes
    """

    ANDAMAN_AND_NICOBAR_ISLANDS = "ANDAMAN_AND_NICOBAR_ISLANDS"
    ANDHRA_PRADESH = "ANDHRA_PRADESH"
    ARUNACHAL_PRADESH = "ARUNACHAL_PRADESH"
    ASSAM = "ASSAM"
    BIHAR = "BIHAR"
    CHATTISGARH = "CHATTISGARH"
    CHANDIGARH = "CHANDIGARH"
    DAMAN_AND_DIU = "DAMAN_AND_DIU"
    DELHI = "DELHI"
    DADRA_AND_NAGAR_HAVELI = "DADRA_AND_NAGAR_HAVELI"
    GOA = "GOA"
    GUJARAT = "GUJARAT"
    HIMACHAL_PRADESH = "HIMACHAL_PRADESH"
    HARYANA = "HARYANA"
    JHARKHAND = "JHARKHAND"
    JAMMU_AND_KASHMIR = "JAMMU_AND_KASHMIR"
    KARNATAKA = "KARNATAKA"
    KERALA = "KERALA"
    LAKSHADWEEP = "LAKSHADWEEP"
    MAHARASHTRA = "MAHARASHTRA"
    MEGHALAYA = "MEGHALAYA"
    MANIPUR = "MANIPUR"
    MADHYA_PRADESH = "MADHYA_PRADESH"
    MIZORAM = "MIZORAM"
    NAGALAND = "NAGALAND"
    ODISSA = "ODISSA"
    PUNJAB = "PUNJAB"
    PONDICHERRY = "PONDICHERRY"
    RAJASTHAN = "RAJASTHAN"
    SIKKIM = "SIKKIM"
    TELANGANA = "TELANGANA"
    TAMIL_NADU = "TAMIL_NADU"
    TRIPURA = "TRIPURA"
    UTTARAKHAND = "UTTARAKHAND"
    UTTAR_PRADESH = "UTTAR_PRADESH"
    WEST_BENGAL = "WEST_BENGAL"


class InquiryPurpose(Enum):
    OTHER = "OTHER"
    AUTO_LOAN = "AUTO_LOAN"
    HOUSING_LOAN = "HOUSING_LOAN"
    PROPERTY_LOAN = "PROPERTY_LOAN"
    LOAN_AGAINST_SHARES_SECURITIES = "LOAN_AGAINST_SHARES_SECURITIES"
    PERSONAL_LOAN = "PERSONAL_LOAN"
    CONSUMER_LOAN = "CONSUMER_LOAN"
    GOLD_LOAN = "GOLD_LOAN"
    EDUCATION_LOAN = "EDUCATION_LOAN"
    LOAN_TO_PROFESSIONAL = "LOAN_TO_PROFESSIONAL"
    CREDIT_CARD = "CREDIT_CARD"
    LEASE = "LEASE"
    OVERDRAFT = "OVERDRAFT"
    TWO_WHEELER_LOAN = "TWO_WHEELER_LOAN"
    NON_FUNDED_CREDIT_FACILITY = "NON_FUNDED_CREDIT_FACILITY"
    LOAN_AGAINST_BANK_DEPOSITS = "LOAN_AGAINST_BANK_DEPOSITS"
    FLEET_CARD = "FLEET_CARD"
    COMMERCIAL_VEHICLE_LOAN = "COMMERCIAL_VEHICLE_LOAN"
    TELCO_WIRELESS = "TELCO_WIRELESS"
    TELCO_BROADBAND = "TELCO_BROADBAND"
    TELCO_LANDLINE = "TELCO_LANDLINE"
    SECURED_CREDIT_CARD = "SECURED_CREDIT_CARD"
    USED_CAR_LOAN = "USED_CAR_LOAN"
    CONSTRUCTION_EQUIPMENT_LOAN = "CONSTRUCTION_EQUIPMENT_LOAN"
    TRACTOR_LOAN = "TRACTOR_LOAN"
    CORPORATE_CREDIT_CARD = "CORPORATE_CREDIT_CARD"
    AUTO_LEAS = "AUTO_LEAS"
    BUSINESS_LOAN = "BUSINESS_LOAN"
    BUSINESS_LOAN_PRIORITY_SECTOR_SMALL_BUSINESS = (
        "BUSINESS_LOAN_PRIORITY_SECTOR_SMALL_BUSINESS"
    )
    BUSINESS_LOAN_PRIORITY_SECTOR_AGRICULTURE = (
        "BUSINESS_LOAN_PRIORITY_SECTOR_AGRICULTURE"
    )
    BUSINESS_LOAN_PRIORITY_SECTOR_OTHERS = "BUSINESS_LOAN_PRIORITY_SECTOR_OTHERS"
    BUSINESS_NON_FUNDED_CREDIT_FACILITY = "BUSINESS_NON_FUNDED_CREDIT_FACILITY"
    BUSINESS_NON_FUNDED_CREDIT_FACILITY_PRIORITY_SECTOR_SMALL_BUSINESS = (
        "BUSINESS_NON_FUNDED_CREDIT_FACILITY_PRIORITY_SECTOR_SMALL_BUSINESS"
    )
    BUSINESS_NON_FUNDED_CREDIT_FACILITY_PRIORITY_SECTOR_AGRICULTURE = (
        "BUSINESS_NON_FUNDED_CREDIT_FACILITY_PRIORITY_SECTOR_AGRICULTURE"
    )
    BUSINESS_NON_FUNDED_CREDIT_FACILITY_PRIORITY_SECTOR_OTHE = (
        "BUSINESS_NON_FUNDED_CREDIT_FACILITY_PRIORITY_SECTOR_OTHE"
    )
    BUSINESS_LOAN_AGAINST_BANK_DEPOSITS = "BUSINESS_LOAN_AGAINST_BANK_DEPOSITS"
    STAFF_LOAN = "STAFF_LOAN"
    DISCLOSURE = "DISCLOSURE"
    MICROFINANCE_BUSINESS_LOAN = "MICROFINANCE_BUSINESS_LOAN"
    MICROFINANCE_PERSONAL_LOAN = "MICROFINANCE_PERSONAL_LOAN"
    MICROFINANCE_HOUSING_LOAN = "MICROFINANCE_HOUSING_LOAN"
    MICROFINANCE_OTHERS = "MICROFINANCE_OTHERS"


class IDTypes(Enum):
    AADHAR = "AADHAR"
    PAN = "PAN"
    VOTER_ID = "VOTER_ID"
    PASSPORT_ID = "PASSPORT_ID"
    RATION_CARD = "RATION_CARD"
    DRIVER_LICENSE = "DRIVER_LICENSE"
    OTHER_ID = "OTHER_ID"


class AddressType(Enum):
    HOME = "HOME"
    OFFICE = "OFFICE"
    OTHER = "OTHER"


class AdditionalNameType(Enum):
    FATHER = "FATHER"
    HUSBAND = "HUSBAND"
    BROTHER = "BROTHER"
    SON = "SON"
    SON_IN_LAW = "SON_IN_LAW"
    FATHER_IN_LAW = "FATHER_IN_LAW"
    BROTHER_IN_LAW = "BROTHER_IN_LAW"
    OTHER = "OTHER"
    MOTHER = "MOTHER"
    WIFE = "WIFE"
    SISTER = "SISTER"
    DAUGHTER = "DAUGHTER"
    DAUGHTER_IN_LAW = "DAUGHTER_IN_LAW"
    MOTHER_IN_LAW = "MOTHER_IN_LAW"
    SISTER_IN_LAW = "SISTER_IN_LAW"


class ProductCode(Enum):
    CCR = "CCR"
    MCR = "MCR"
    MCS = "MCS"
