=begin
#Onfido API v3.6

#The Onfido API (v3.6)

The version of the OpenAPI document: v3.6

Generated by: https://openapi-generator.tech
Generator version: 7.9.0

=end

require 'date'
require 'time'

module Onfido
  class WebhookEventType
    AUDIT_LOG_CREATED = "audit_log.created".freeze
    WATCHLIST_MONITOR_MATCHES_UPDATED = "watchlist_monitor.matches_updated".freeze
    WORKFLOW_RUN_COMPLETED = "workflow_run.completed".freeze
    WORKFLOW_TASK_STARTED = "workflow_task.started".freeze
    WORKFLOW_TASK_COMPLETED = "workflow_task.completed".freeze
    CHECK_STARTED = "check.started".freeze
    CHECK_REOPENED = "check.reopened".freeze
    CHECK_WITHDRAWN = "check.withdrawn".freeze
    CHECK_COMPLETED = "check.completed".freeze
    CHECK_FORM_COMPLETED = "check.form_completed".freeze
    REPORT_WITHDRAWN = "report.withdrawn".freeze
    REPORT_RESUMED = "report.resumed".freeze
    REPORT_CANCELLED = "report.cancelled".freeze
    REPORT_AWAITING_APPROVAL = "report.awaiting_approval".freeze
    REPORT_COMPLETED = "report.completed".freeze
    WORKFLOW_TIMELINE_FILE_CREATED = "workflow_timeline_file.created".freeze
    WORKFLOW_SIGNED_EVIDENCE_FILE_CREATED = "workflow_signed_evidence_file.created".freeze
    UNKNOWN_DEFAULT_OPEN_API = "unknown_default_open_api".freeze

    def self.all_vars
      @all_vars ||= [AUDIT_LOG_CREATED, WATCHLIST_MONITOR_MATCHES_UPDATED, WORKFLOW_RUN_COMPLETED, WORKFLOW_TASK_STARTED, WORKFLOW_TASK_COMPLETED, CHECK_STARTED, CHECK_REOPENED, CHECK_WITHDRAWN, CHECK_COMPLETED, CHECK_FORM_COMPLETED, REPORT_WITHDRAWN, REPORT_RESUMED, REPORT_CANCELLED, REPORT_AWAITING_APPROVAL, REPORT_COMPLETED, WORKFLOW_TIMELINE_FILE_CREATED, WORKFLOW_SIGNED_EVIDENCE_FILE_CREATED, UNKNOWN_DEFAULT_OPEN_API].freeze
    end

    # Builds the enum from string
    # @param [String] The enum value in the form of the string
    # @return [String] The enum value
    def self.build_from_hash(value)
      new.build_from_hash(value)
    end

    # Builds the enum from string
    # @param [String] The enum value in the form of the string
    # @return [String] The enum value
    def build_from_hash(value)
      return value if WebhookEventType.all_vars.include?(value)
      raise "Invalid ENUM value #{value} for class #WebhookEventType"
    end
  end
end