# coding: utf-8

"""
    NCBI Datasets API

    ### NCBI Datasets is a resource that lets you easily gather data from NCBI. The NCBI Datasets version 2 API is updated often to add new features, fix bugs, and enhance usability. 

    The version of the OpenAPI document: v2
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


from __future__ import annotations
import json
from enum import Enum
from typing_extensions import Self


class V2FileFileType(str, Enum):
    """
    V2FileFileType
    """

    """
    allowed enum values
    """
    UNKNOWN = 'UNKNOWN'
    FASTA = 'FASTA'
    GFF3 = 'GFF3'
    DATA_REPORT = 'DATA_REPORT'
    ANNOTATION_REPORT = 'ANNOTATION_REPORT'
    GENOMIC_NUCLEOTIDE_FASTA = 'GENOMIC_NUCLEOTIDE_FASTA'
    PROTEIN_FASTA = 'PROTEIN_FASTA'
    GENBANK_FLAT_FILE = 'GENBANK_FLAT_FILE'
    GENPEPT_FLAT_FILE = 'GENPEPT_FLAT_FILE'
    README = 'README'
    PDB_FILE = 'PDB_FILE'
    CDS_NUCLEOTIDE_FASTA = 'CDS_NUCLEOTIDE_FASTA'
    RNA_NUCLEOTIDE_FASTA = 'RNA_NUCLEOTIDE_FASTA'
    DATA_TABLE = 'DATA_TABLE'
    SEQUENCE_REPORT = 'SEQUENCE_REPORT'
    GTF = 'GTF'
    PROKARYOTE_GENE_DATA_REPORT = 'PROKARYOTE_GENE_DATA_REPORT'
    PROKARYOTE_GENE_LOCATION_DATA_REPORT = 'PROKARYOTE_GENE_LOCATION_DATA_REPORT'
    GENOMIC_NUCLEOTIDE_WITH_FLANK_FASTA = 'GENOMIC_NUCLEOTIDE_WITH_FLANK_FASTA'
    BIOSAMPLE_REPORT = 'BIOSAMPLE_REPORT'
    CATALOG = 'CATALOG'
    TAXONOMY_NAMES_REPORT = 'TAXONOMY_NAMES_REPORT'

    @classmethod
    def from_json(cls, json_str: str) -> Self:
        """Create an instance of V2FileFileType from a JSON string"""
        return cls(json.loads(json_str))


