# coding: utf-8

"""
    Verity471 Unified API

      - creds: 1.0.1
  - indicators: 1.0.0
  - malware: 1.0.1
  - reports: 1.0.1
  - sources: 1.0.3
  - actors: 1.0.2
  - watchers: 1.0.0
  - observables: 1.0.0
  - entities: 1.0.0
  - girs: 1.0.0


    The version of the OpenAPI document: 1.1.3
    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 ObservableType(str, Enum):
    """
    ObservableType
    """

    """
    allowed enum values
    """
    AUTONOMOUSSYSTEM = 'AutonomousSystem'
    FILESIZE = 'FileSize'
    FILETYPE = 'FileType'
    FILENAME = 'FileName'
    IPADDRESS = 'IPAddress'
    MALICIOUSDOMAIN = 'MaliciousDomain'
    MALICIOUSURL = 'MaliciousURL'
    MD5 = 'MD5'
    SHA1 = 'SHA1'
    SHA256 = 'SHA256'
    SSLCERTIFICATE = 'SSLCertificate'
    SSLCERTIFICATEFINGERPRINT = 'SSLCertificateFingerprint'
    SSLCERTIFICATEID = 'SSLCertificateID'

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


