# coding: utf-8

"""
    PAY.JP API v2

    No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)

    The version of the OpenAPI document: 2.0.0
    Contact: support@pay.jp
    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 StatementType(str, Enum):
    """
    Statementのタイプ  Statement自体が大枠としてどのような取引なのかを表す。 加盟店、PAYのオペレーター、システムがBalanceの状態を把握するときに利用できる分類にする。  ### 例 + type=sales     + 売上が発生している     + termを見ればどの区間の売上かがわかる + type=transfer_feeが2つ付いている     + 振込が2回行われた＝振込エラーが発生していた + type=forfeitが付いている     + この残高は失効した
    """

    """
    allowed enum values
    """
    SALES = 'sales'
    SERVICE_FEE = 'service_fee'
    TRANSFER_FEE = 'transfer_fee'
    FORFEIT = 'forfeit'
    MISC = 'misc'

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


