from enum import Enum


class LegalConstitutionType(Enum):
    """
    Enums for ConstitutionType
    """

    SOLE_PROPRIETORSHIP = "SOLE_PROPRIETORSHIP"
    PARTNERSHIP_FIRM = "PARTNERSHIP_FIRM"
    HUF = "HUF"
    PRIVATE_LIMITED_COMPANY = "PRIVATE_LIMITED_COMPANY"
    PUBLIC_LIMITED_COMPANY = "PUBLIC_LIMITED_COMPANY"
    SOCIETY = "SOCIETY"
    ASSOCIATION_OF_PERSONS = "ASSOCIATION_OF_PERSONS"
    BODY_OF_INDIVIDUALS = "BODY_OF_INDIVIDUALS"
    TRUST = "TRUST"
    LIQUIDATOR = "LIQUIDATOR"
    LIMITED_LIABILITY_PARTNERSHIP = "LIMITED_LIABILITY_PARTNERSHIP"
    ARTIFICIAL_LIABILITY_PARTNERSHIP = "ARTIFICIAL_LIABILITY_PARTNERSHIP"
    PUBLIC_SECTOR_BANKS = "PUBLIC_SECTOR_BANKS"
    CENTRAL_OR_STATE_GOVERNMENT_DEPARTMENTS_OR_AGENCY = (
        "CENTRAL_OR_STATE_GOVERNMENT_DEPARTMENTS_OR_AGENCY"
    )
    SECTION_8_COMPANIES_ACT = "SECTION_8_COMPANIES_ACT"
    ARTIFICIAL_JURIDICAL_PERSON = "ARTIFICIAL_JURIDICAL_PERSON"
    INTERNATIONAL_ORGANISATION_OR_AGENCY = "INTERNATIONAL_ORGANISATION_OR_AGENCY"
    FOREIGN_EMBASSY = "FOREIGN_EMBASSY"
    CONSULAR_OFFICE = "CONSULAR_OFFICE"
    NOT_CATEGORIZED = "NOT_CATEGORIZED"
    OTHERS = "OTHERS"
    FOREIGN_PORTFOLIO_INVESTORS = "FOREIGN_PORTFOLIO_INVESTORS"


class AccountType(Enum):
    """
    Enums for AccountType
    """

    NORMAL = "NORMAL"
    SMALL = "SMALL"
    SIMPLIFIED = "SIMPLIFIED"
    OTPBASED = "OTPBASED"
    MINOR = "MINOR"


class IndividualRelatedPersonType(Enum):
    """
    Enums for RelatedPersonType
    """

    GUARDIAN_OF_MINOR = "GUARDIAN_OF_MINOR"
    ASSIGNEE = "ASSIGNEE"
    AUTHORIZED_REPRESENTATIVE = "AUTHORIZED_REPRESENTATIVE"


class LegalEntityRelatedPersonType(Enum):
    """
    Enums for RelatedPersonType
    """

    DIRECTOR = "DIRECTOR"
    PROMOTER = "PROMOTER"
    KARTA = "KARTA"
    TRUSTEE = "TRUSTEE"
    PARTNER = "PARTNER"
    PROPRIETOR = "PROPRIETOR"
    COURT_APPOINTED_OFFICIAL = "COURT_APPOINTED_OFFICIAL"
    BENEFICIARY = "BENEFICIARY"
    AUTHORISED_SIGNATORY = "AUTHORISED_SIGNATORY"
    BENEFICIAL_OWNER = "BENEFICIAL_OWNER"
    POWER_OF_ATTORNEY_HOLDER = "POWER_OF_ATTORNEY_HOLDER"
    OTHER = "OTHER"


class IndvIdentitiesType(Enum):
    """
    Enums for IdentitiesType
    """

    PASSPORT = "PASSPORT"
    VOTER_ID = "VOTER_ID"
    PAN = "PAN"
    DRIVING_LICENCE = "DRIVING_LICENCE"
    AADHAAR = "AADHAAR"
    NREGA_JOB_CARD = "NREGA_JOB_CARD"
    E_KYC_AUTHENTICATION = "E_KYC_AUTHENTICATION"
    OFFLINE_VERIFICATION_OF_AADHAAR = "OFFLINE_VERIFICATION_OF_AADHAAR"
    OTHERS = "OTHERS"


class LegalIdentitiesType(Enum):
    """
    Enums for Legal Identities Type
    """

    PAN = "PAN"
    OTHERS = "OTHERS"
    OFFICIALLY_VALID_DOCUMENT = "OFFICIALLY_VALID_DOCUMENT"
    CERTIFICATE_OF_INCORPORATION_OR_FORMATION = (
        "CERTIFICATE_OF_INCORPORATION_OR_FORMATION"
    )
    REGISTRATION_CERTIFICATE = "REGISTRATION_CERTIFICATE"
    MEMORANDUM_AND_ARTICLES_OF_ASSOCIATION = "MEMORANDUM_AND_ARTICLES_OF_ASSOCIATION"
    PARTNERSHIP_DEED = "PARTNERSHIP_DEED"
    TRUST_DEED = "TRUST_DEED"
    RESOLUTION_OF_BOARD_OR_MANAGING_COMMITTEE = (
        "RESOLUTION_OF_BOARD_OR_MANAGING_COMMITTEE"
    )
    POWER_OF_ATTORNEY_HOLDER = "POWER_OF_ATTORNEY_HOLDER"
    ACTIVITY_PROOF_1_FOR_SOLE_PROPRIETORSHIP_ONLY = (
        "ACTIVITY_PROOF_1_FOR_SOLE_PROPRIETORSHIP_ONLY"
    )
    ACTIVITY_PROOF_2_FOR_SOLE_PROPRIETORSHIP_ONLY = (
        "ACTIVITY_PROOF_2_FOR_SOLE_PROPRIETORSHIP_ONLY"
    )


class RelationIdentityType(Enum):
    """Enum RelationIdentityType"""

    AADHAAR_NUMBER = "AADHAAR_NUMBER"
    VOTER_ID_CARD = "VOTER_ID_CARD"
    NREGA_JOB_CARD = "NREGA_JOB_CARD"
    PASSPORT_NO = "PASSPORT_NO"
    DRIVING_LICENCE_NO = "DRIVING_LICENCE_NO"
    E_KYC = "E_KYC"
    OKYC = "OKYC"


class IdVerificationStatus(Enum):
    """
    Enums for IdentitiesType
    """

    No = "No"


class RelationshipType(Enum):
    """
    Enums for RelationshipType
    """

    FATHER = "FATHER"
    SPOUSE = "SPOUSE"


class Gender(Enum):
    """
    Enums for Gender
    """

    MALE = "MALE"
    FEMALE = "FEMALE"
    TRANSGENDER = "TRANSGENDER"


class CountryCode(Enum):
    """
    Enums for Country Code
    """

    AFGHANISTAN = "AFGHANISTAN"
    ALAND_ISLANDS_ = "ALAND_ISLANDS_"
    ALBANIA = "ALBANIA"
    ALGERIA = "ALGERIA"
    AMERICAN_SAMOA = "AMERICAN_SAMOA"
    ANDORRA = "ANDORRA"
    ANGOLA = "ANGOLA"
    ANGUILLA = "ANGUILLA"
    ANTARCTICA = "ANTARCTICA"
    ANTIGUA_AND_BARBUDA = "ANTIGUA_AND_BARBUDA"
    ARGENTINA = "ARGENTINA"
    ARMENIA = "ARMENIA"
    ARUBA = "ARUBA"
    AUSTRALIA = "AUSTRALIA"
    AUSTRIA = "AUSTRIA"
    AZERBAIJAN = "AZERBAIJAN"
    BAHAMAS = "BAHAMAS"
    BAHRAIN = "BAHRAIN"
    BANGLADESH = "BANGLADESH"
    BARBADOS = "BARBADOS"
    BELARUS = "BELARUS"
    BELGIUM = "BELGIUM"
    BELIZE = "BELIZE"
    BENIN = "BENIN"
    BERMUDA = "BERMUDA"
    BHUTAN = "BHUTAN"
    BOLIVIA_PLURINATIONAL_STATE = "BOLIVIA_PLURINATIONAL_STATE"
    BONAIRE_SINT_EUSTATIUS_AND_SABA = "BONAIRE_SINT_EUSTATIUS_AND_SABA"
    BOSNIA_AND_HERZEGOVINA = "BOSNIA_AND_HERZEGOVINA"
    BOTSWANA = "BOTSWANA"
    BOUVET_ISLAND = "BOUVET_ISLAND"
    BRAZIL = "BRAZIL"
    BRITISH_INDIAN_OCEAN_TERRITORY = "BRITISH_INDIAN_OCEAN_TERRITORY"
    BRUNEI_DARUSSALAM = "BRUNEI_DARUSSALAM"
    BULGARIA = "BULGARIA"
    BURKINA_FASO = "BURKINA_FASO"
    BURUNDI = "BURUNDI"
    CABO_VERDE = "CABO_VERDE"
    CAMBODIA = "CAMBODIA"
    CAMEROON = "CAMEROON"
    CANADA = "CANADA"
    CAYMAN_ISLANDS = "CAYMAN_ISLANDS"
    CENTRAL_AFRICAN_REPUBLIC = "CENTRAL_AFRICAN_REPUBLIC"
    CHAD = "CHAD"
    CHILE = "CHILE"
    CHINA = "CHINA"
    CHRISTMAS_ISLAND = "CHRISTMAS_ISLAND"
    COCOS_KEELING_ISLANDS = "COCOS_KEELING_ISLANDS"
    COLOMBIA = "COLOMBIA"
    COMOROS = "COMOROS"
    CONGO = "CONGO"
    CONGO_THE_DEMOCRATIC_REPUBLIC = "CONGO_THE_DEMOCRATIC_REPUBLIC"
    COOK_ISLANDS = "COOK_ISLANDS"
    COSTA_RICA = "COSTA_RICA"
    COTE_DIVOIRE = "COTE_DIVOIRE"
    CROATIA = "CROATIA"
    CUBA = "CUBA"
    CURACAO_CURAÇAO = "CURACAO_CURAÇAO"
    CYPRUS = "CYPRUS"
    CZECH_REPUBLIC = "CZECH_REPUBLIC"
    DENMARK = "DENMARK"
    DJIBOUTI = "DJIBOUTI"
    DOMINICA = "DOMINICA"
    DOMINICAN_REPUBLIC = "DOMINICAN_REPUBLIC"
    ECUADOR = "ECUADOR"
    EGYPT = "EGYPT"
    EL_SALVADOR = "EL_SALVADOR"
    EQUATORIAL_GUINEA = "EQUATORIAL_GUINEA"
    ERITREA = "ERITREA"
    ESTONIA = "ESTONIA"
    ETHIOPIA = "ETHIOPIA"
    FALKLAND_ISLANDS_MALVINAS = "FALKLAND_ISLANDS_MALVINAS"
    FAROE_ISLANDS = "FAROE_ISLANDS"
    FIJI = "FIJI"
    FINLAND = "FINLAND"
    FRANCE = "FRANCE"
    FRENCH_GUIANA = "FRENCH_GUIANA"
    FRENCH_POLYNESIA = "FRENCH_POLYNESIA"
    FRENCH_SOUTHERN_TERRITORIES = "FRENCH_SOUTHERN_TERRITORIES"
    GABON = "GABON"
    GAMBIA = "GAMBIA"
    GEORGIA = "GEORGIA"
    GERMANY = "GERMANY"
    GHANA = "GHANA"
    GIBRALTAR = "GIBRALTAR"
    GREECE = "GREECE"
    GREENLAND = "GREENLAND"
    GRENADA = "GRENADA"
    GUADELOUPE = "GUADELOUPE"
    GUAM = "GUAM"
    GUATEMALA = "GUATEMALA"
    GUERNSEY = "GUERNSEY"
    GUINEA = "GUINEA"
    GUINEABISSAU = "GUINEABISSAU"
    GUYANA = "GUYANA"
    HAITI = "HAITI"
    HEARD_ISLAND_AND_MCDONALD_ISLANDS = "HEARD_ISLAND_AND_MCDONALD_ISLANDS"
    HOLY_SEE_VATICAN_CITY_STATE = "HOLY_SEE_VATICAN_CITY_STATE"
    HONDURAS = "HONDURAS"
    HONG_KONG = "HONG_KONG"
    HUNGARY = "HUNGARY"
    ICELAND = "ICELAND"
    INDIA = "INDIA"
    INDONESIA = "INDONESIA"
    IRAN_ISLAMIC_REPUBLIC = "IRAN_ISLAMIC_REPUBLIC"
    IRAQ = "IRAQ"
    IRELAND = "IRELAND"
    ISLE_OF_MAN = "ISLE_OF_MAN"
    ISRAEL = "ISRAEL"
    ITALY = "ITALY"
    JAMAICA = "JAMAICA"
    JAPAN = "JAPAN"
    JERSEY = "JERSEY"
    JORDAN = "JORDAN"
    KAZAKHSTAN = "KAZAKHSTAN"
    KENYA = "KENYA"
    KIRIBATI = "KIRIBATI"
    KOREA_DEMOCRATIC_PEOPLE_REPUBLIC = "KOREA_DEMOCRATIC_PEOPLE_REPUBLIC"
    KOREA_REPUBLIC_OF = "KOREA_REPUBLIC_OF"
    KUWAIT = "KUWAIT"
    KYRGYZSTAN = "KYRGYZSTAN"
    LAO_PEOPLE_DEMOCRATIC_REPUBLIC = "LAO_PEOPLE_DEMOCRATIC_REPUBLIC"
    LATVIA = "LATVIA"
    LEBANON = "LEBANON"
    LESOTHO = "LESOTHO"
    LIBERIA = "LIBERIA"
    LIBYA = "LIBYA"
    LIECHTENSTEIN = "LIECHTENSTEIN"
    LITHUANIA = "LITHUANIA"
    LUXEMBOURG = "LUXEMBOURG"
    MACAO = "MACAO"
    MACEDONIA_THE_FORMER_YUGOSLAV_REPUBLIC = "MACEDONIA_THE_FORMER_YUGOSLAV_REPUBLIC"
    MADAGASCAR = "MADAGASCAR"
    MALAWI = "MALAWI"
    MALAYSIA = "MALAYSIA"
    MALDIVES = "MALDIVES"
    MALI = "MALI"
    MALTA = "MALTA"
    MARSHALL_ISLANDS = "MARSHALL_ISLANDS"
    MARTINIQUE = "MARTINIQUE"
    MAURITANIA = "MAURITANIA"
    MAURITIUS = "MAURITIUS"
    MAYOTTE = "MAYOTTE"
    MEXICO = "MEXICO"
    MICRONESIA_FEDERATED_STATES = "MICRONESIA_FEDERATED_STATES"
    MOLDOVA_REPUBLIC = "MOLDOVA_REPUBLIC"
    MONACO = "MONACO"
    MONGOLIA = "MONGOLIA"
    MONTENEGRO = "MONTENEGRO"
    MONTSERRAT = "MONTSERRAT"
    MOROCCO = "MOROCCO"
    MOZAMBIQUE = "MOZAMBIQUE"
    MYANMAR = "MYANMAR"
    NAMIBIA = "NAMIBIA"
    NAURU = "NAURU"
    NEPAL = "NEPAL"
    NETHERLANDS = "NETHERLANDS"
    NEW_CALEDONIA = "NEW_CALEDONIA"
    NEW_ZEALAND = "NEW_ZEALAND"
    NICARAGUA = "NICARAGUA"
    NIGER = "NIGER"
    NIGERIA = "NIGERIA"
    NIUE = "NIUE"
    NORFOLK_ISLAND = "NORFOLK_ISLAND"
    NORTHERN_MARIANA_ISLANDS = "NORTHERN_MARIANA_ISLANDS"
    NORWAY = "NORWAY"
    OMAN = "OMAN"
    PAKISTAN = "PAKISTAN"
    PALAU = "PALAU"
    PALESTINE_STATE_OF = "PALESTINE_STATE_OF"
    PANAMA = "PANAMA"
    PAPUA_NEW_GUINEA = "PAPUA_NEW_GUINEA"
    PARAGUAY = "PARAGUAY"
    PERU = "PERU"
    PHILIPPINES = "PHILIPPINES"
    PITCAIRN = "PITCAIRN"
    POLAND = "POLAND"
    PORTUGAL = "PORTUGAL"
    PUERTO_RICO = "PUERTO_RICO"
    QATAR = "QATAR"
    REUNION = "REUNION"
    ROMANIA = "ROMANIA"
    RUSSIAN_FEDERATION = "RUSSIAN_FEDERATION"
    RWANDA = "RWANDA"
    SAINT_BARTHELEMY = "SAINT_BARTHELEMY"
    SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA = (
        "SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA"
    )
    SAINT_KITTS_AND_NEVIS = "SAINT_KITTS_AND_NEVIS"
    SAINT_LUCIA = "SAINT_LUCIA"
    SAINT_MARTIN_FRENCH_PART = "SAINT_MARTIN_FRENCH_PART"
    SAINT_PIERRE_AND_MIQUELON = "SAINT_PIERRE_AND_MIQUELON"
    SAINT_VINCENT_AND_THE_GRENADINES = "SAINT_VINCENT_AND_THE_GRENADINES"
    SAMOA = "SAMOA"
    SAN_MARINO = "SAN_MARINO"
    SAO_TOME_AND_PRINCIPE = "SAO_TOME_AND_PRINCIPE"
    SAUDI_ARABIA = "SAUDI_ARABIA"
    SENEGAL = "SENEGAL"
    SERBIA = "SERBIA"
    SEYCHELLES = "SEYCHELLES"
    SIERRA_LEONE = "SIERRA_LEONE"
    SINGAPORE = "SINGAPORE"
    SINT_MAARTEN_DUTCH_PART = "SINT_MAARTEN_DUTCH_PART"
    SLOVAKIA = "SLOVAKIA"
    SLOVENIA = "SLOVENIA"
    SOLOMON_ISLANDS = "SOLOMON_ISLANDS"
    SOMALIA = "SOMALIA"
    SOUTH_AFRICA = "SOUTH_AFRICA"
    SOUTH_GEORGIA_AND_THE_SOUTH_SANDWICH_ISLANDS = (
        "SOUTH_GEORGIA_AND_THE_SOUTH_SANDWICH_ISLANDS"
    )
    SOUTH_SUDAN = "SOUTH_SUDAN"
    SPAIN = "SPAIN"
    SRI_LANKA = "SRI_LANKA"
    SUDAN = "SUDAN"
    SURINAME = "SURINAME"
    SVALBARD_AND_JAN_MAYEN = "SVALBARD_AND_JAN_MAYEN"
    SWAZILAND = "SWAZILAND"
    SWEDEN = "SWEDEN"
    SWITZERLAND = "SWITZERLAND"
    SYRIAN_ARAB_REPUBLIC = "SYRIAN_ARAB_REPUBLIC"
    TAIWAN_PROVINCE_OF_CHINA = "TAIWAN_PROVINCE_OF_CHINA"
    TAJIKISTAN = "TAJIKISTAN"
    TANZANIA_UNITED_REPUBLIC = "TANZANIA_UNITED_REPUBLIC"
    THAILAND = "THAILAND"
    TIMOR_LESTE = "TIMOR_LESTE"
    TOGO = "TOGO"
    TOKELAU = "TOKELAU"
    TONGA = "TONGA"
    TRINIDAD_AND_TOBAGO = "TRINIDAD_AND_TOBAGO"
    TUNISIA = "TUNISIA"
    TURKEY = "TURKEY"
    TURKMENISTAN = "TURKMENISTAN"
    TURKS_AND_CAICOS_ISLANDS = "TURKS_AND_CAICOS_ISLANDS"
    TUVALU = "TUVALU"
    UGANDA = "UGANDA"
    UKRAINE = "UKRAINE"
    UNITED_ARAB_EMIRATES = "UNITED_ARAB_EMIRATES"
    UNITED_KINGDOM = "UNITED_KINGDOM"
    UNITED_STATES = "UNITED_STATES"
    UNITED_STATES_MINOR_OUTLYING_ISLANDS = "UNITED_STATES_MINOR_OUTLYING_ISLANDS"
    URUGUAY = "URUGUAY"
    UZBEKISTAN = "UZBEKISTAN"
    VANUATU = "VANUATU"
    VENEZUELA_BOLIVARIAN_REPUBLIC_OF = "VENEZUELA_BOLIVARIAN_REPUBLIC_OF"
    VIET_NAM = "VIET_NAM"
    VIRGIN_ISLANDS_BRITISH = "VIRGIN_ISLANDS_BRITISH"
    VIRGIN_ISLANDS_U_S = "VIRGIN_ISLANDS_U_S"
    WALLIS_AND_FUTUNA = "WALLIS_AND_FUTUNA"
    WESTERN_SAHARA = "WESTERN_SAHARA"
    YEMEN = "YEMEN"
    ZAMBIA = "ZAMBIA"
    ZIMBABWE = "ZIMBABWE"


class StateMaster(Enum):
    """
    Enums for State Master
    """

    ANDAMAN_AND_NICOBAR_ISLANDS = "ANDAMAN_AND_NICOBAR_ISLANDS"
    ANDHRA_PRADESH = "ANDHRA_PRADESH"
    ARUNACHAL_PRADESH = "ARUNACHAL_PRADESH"
    ASSAM = "ASSAM"
    BIHAR = "BIHAR"
    CHANDIGARH = "CHANDIGARH"
    CHHATTISGARH = "CHHATTISGARH"
    DADRA_AND_NAGAR_HAVELI_ = "DADRA_AND_NAGAR_HAVELI_"
    DAMAN_AND_DIU = "DAMAN_AND_DIU"
    DELHI = "DELHI"
    GOA = "GOA"
    GUJARAT = "GUJARAT"
    HARYANA = "HARYANA"
    HIMACHAL_PRADESH = "HIMACHAL_PRADESH"
    JAMMU_AND_KASHMIR = "JAMMU_AND_KASHMIR"
    JHARKHAND = "JHARKHAND"
    KARNATAKA = "KARNATAKA"
    KERALA = "KERALA"
    LADAKH = "LADAKH"
    LAKSHADWEEP = "LAKSHADWEEP"
    MADHYA_PRADESH = "MADHYA_PRADESH"
    MAHARASHTRA = "MAHARASHTRA"
    MANIPUR = "MANIPUR"
    MEGHALAYA = "MEGHALAYA"
    MIZORAM = "MIZORAM"
    NAGALAND = "NAGALAND"
    ODISHA = "ODISHA"
    PUDUCHERRY = "PUDUCHERRY"
    PUNJAB = "PUNJAB"
    RAJASTHAN = "RAJASTHAN"
    SIKKIM = "SIKKIM"
    TAMIL_NADU = "TAMIL_NADU"
    TELANGANA = "TELANGANA"
    TRIPURA = "TRIPURA"
    UTTAR_PRADESH = "UTTAR_PRADESH"
    UTTARAKHAND = "UTTARAKHAND"
    WEST_BENGAL = "WEST_BENGAL"
    OTHER = "OTHER"
    ARMY_POST_OFFICE = "ARMY_POST_OFFICE"


class LegalAddressKyc(Enum):
    """
    Enums for Address KYC
    """

    CERTIFICATE_OF_INCORPORATION_OR_FORMATION = (
        "CERTIFICATE_OF_INCORPORATION_OR_FORMATION"
    )
    REGISTRATION_CERTIFICATE = "REGISTRATION_CERTIFICATE"


class IndvAddressKyc(Enum):
    """Enum for IndvAddressKyc"""

    PROOF_OF_POSSESSION_OF_AADHAAR = "PROOF_OF_POSSESSION_OF_AADHAAR"
    PASSPORT = "PASSPORT"
    DRIVING_LICENSE = "DRIVING_LICENSE"
    VOTERS_IDENTITY_CARD = "VOTERS_IDENTITY_CARD"
    NREGA_JOB_CARD = "NREGA_JOB_CARD"
    E_KYC_AUTHENTICATION = "E_KYC_AUTHENTICATION"
    OFFLINE_VERIFICATION_OF_AADHAAR = "OFFLINE_VERIFICATION_OF_AADHAAR"
    UTILITY_BILL = "UTILITY_BILL"
    PROPERTY_OR_MUNICIPAL_TAX_RECEIPT = "PROPERTY_OR_MUNICIPAL_TAX_RECEIPT"
    PENSION_OR_RETIRED_GOVERNMENT_DEPARTMENTS = (
        "PENSION_OR_RETIRED_GOVERNMENT_DEPARTMENTS"
    )
    SELF_DECLARATION = "SELF_DECLARATION"
    OTHER = "OTHER"


class KycTypes(Enum):
    """
    Enums for Kyc types
    """

    CERTIFIED_COPIES = "CERTIFIED_COPIES"
    EKYC = "EKYC"
    OKYC = "OKYC"
    DIGITAL_KYC = "DIGITAL_KYC"
    EQUIVALENT_E_DOCUMENT = "EQUIVALENT_E_DOCUMENT"
    VIDEO_KYC = "VIDEO_KYC"


class PhotographImageEnum(Enum):
    """
    Enums for Image Document Type
    """

    PHOTOGRAPH = "PHOTOGRAPH"


class IndvImageDocumentTypes(Enum):
    """
    Enums for Image Document Type
    """

    PAN = "PAN"
    PROOF_OF_POSSESSION_OF_AADHAAR = "PROOF_OF_POSSESSION_OF_AADHAAR"
    PASSPORT = "PASSPORT"
    DRIVING_LICENSE = "DRIVING_LICENSE"
    VOTERS_IDENTITY_CARD = "VOTERS_IDENTITY_CARD"
    NREGA_JOB_CARD = "NREGA_JOB_CARD"

    E_KYC_AUTHENTICATION = "E_KYC_AUTHENTICATION"
    OFFLINE_VERIFICATION_OF_AADHAAR = "OFFLINE_VERIFICATION_OF_AADHAAR"


class LegalImageDocumentTypes(Enum):
    """
    Enums for Image Document Type
    """

    OFFICIALLY_VALID_DOCUMENT_IN_RESPECT_OF_PERSON_AUTHORIZED_TO_TRANSACT = (
        "OFFICIALLY_VALID_DOCUMENT_IN_RESPECT_OF_PERSON_AUTHORIZED_TO_TRANSACT"
    )
    CERTIFICATE_OF_INCORPORATION_OR_FORMATION = (
        "CERTIFICATE_OF_INCORPORATION_OR_FORMATION"
    )
    REGISTRATION_CERTIFICATE = "REGISTRATION_CERTIFICATE"
    MEMORANDUM_AND_ARTICLES_OF_ASSOCIATION = "MEMORANDUM_AND_ARTICLES_OF_ASSOCIATION"
    PARTNERSHIP_DEED = "PARTNERSHIP_DEED"
    TRUST_DEED = "TRUST_DEED"
    RESOLUTION_OF_BOARD_OR_MANAGING_COMMITTEE = (
        "RESOLUTION_OF_BOARD_OR_MANAGING_COMMITTEE"
    )
    POWER_OF_ATTORNEY_HOLDER = "POWER_OF_ATTORNEY_HOLDER"
    ACTIVITY_PROOF_1_FOR_SOLE_PROPRIETORSHIP_ONLY = (
        "ACTIVITY_PROOF_1_FOR_SOLE_PROPRIETORSHIP_ONLY"
    )
    ACTIVITY_PROOF_2_FOR_SOLE_PROPRIETORSHIP_ONLY = (
        "ACTIVITY_PROOF_2_FOR_SOLE_PROPRIETORSHIP_ONLY"
    )
    OTHER = "OTHER"


class FlagType(Enum):
    """
    Enums for Flag
    """

    YES = "YES"
    NO = "NO"


class AddressType(Enum):
    """
    Enums for Address Type
    """

    PERMANENT = "PERMANENT"
    CURRENT = "CURRENT"


class IndvRelationPersonType(Enum):
    """
    Enums for Indv Relation Person Type
    """

    GUARDIAN_OF_MINOR = "GUARDIAN_OF_MINOR"
    ASSIGNEE = "ASSIGNEE"
    AUTHORISED_REPRESENTATIVE = "AUTHORISED_REPRESENTATIVE"


class LegalRelationPersonType(Enum):
    """
    Enums for Legal Relation Person Type
    """

    DIRECTOR = "DIRECTOR"
    PROMOTER = "PROMOTER"
    KARTA = "KARTA"
    TRUSTEE = "TRUSTEE"
    PARTNER = "PARTNER"
    PROPRIETOR = "PROPRIETOR"
    COURT_APPOINTED_OFFICIAL = "COURT_APPOINTED_OFFICIAL"
    BENEFICIARY = "BENEFICIARY"
    AUTHORISED_SIGNATORY = "AUTHORISED_SIGNATORY"
    BENEFICIAL_OWNER = "BENEFICIAL_OWNER"
    POWER_OF_ATTORNEY_HOLDER = "POWER_OF_ATTORNEY_HOLDER"
    OTHER = "OTHER"


class IdentitySearchTypes(Enum):
    """
    Enums for Identity Search type
    """

    VOTER_ID = "VOTER_ID"
    PASSPORT = "PASSPORT"
    PAN = "PAN"
    DRIVING_LICENSE = "DRIVING_LICENSE"
    PROOF_OF_POSSESSION_OF_AADHAAR = "PROOF_OF_POSSESSION_OF_AADHAAR"
    NREGA_JOB_CARD = "NREGA_JOB_CARD"
    NATIONAL_POPULATION_REGISTER_LETTER = "NATIONAL_POPULATION_REGISTER_LETTER"
    CERTIFICATE_OF_INCORPORATION = "CERTIFICATE_OF_INCORPORATION"
    CERTIFICATE_OF_FORMATION = "CERTIFICATE_OF_FORMATION"
    REGISTRATION_CERTIFICATE = "REGISTRATION_CERTIFICATE"
