# coding: utf-8

"""
    lomi. API

    Payment processing API for francophone West African businesses.

    The version of the OpenAPI document: 1.1.0
    Contact: hello@lomi.africa
    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 WebhookEvent(str, Enum):
    """
    Enum: webhook_event
    """

    """
    allowed enum values
    """
    PAYMENT_CREATED = 'PAYMENT_CREATED'
    PAYMENT_SUCCEEDED = 'PAYMENT_SUCCEEDED'
    PAYMENT_FAILED = 'PAYMENT_FAILED'
    PAYMENT_CANCELED = 'PAYMENT_CANCELED'
    REFUND_CREATED = 'REFUND_CREATED'
    REFUND_COMPLETED = 'REFUND_COMPLETED'
    REFUND_FAILED = 'REFUND_FAILED'
    SUBSCRIPTION_CREATED = 'SUBSCRIPTION_CREATED'
    SUBSCRIPTION_RENEWED = 'SUBSCRIPTION_RENEWED'
    SUBSCRIPTION_CANCELED = 'SUBSCRIPTION_CANCELED'
    CHECKOUT_COMPLETED = 'CHECKOUT_COMPLETED'
    PROVIDER_STATUS_CHANGED = 'PROVIDER_STATUS_CHANGED'

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


