# coding: utf-8
"""
LUSID API
FINBOURNE Technology # noqa: E501
Contact: info@finbourne.com
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
"""
import json
import pprint
import re # noqa: F401
from aenum import Enum, no_arg
from typing import List, Dict, Optional, Any, Union, TYPE_CHECKING
from typing_extensions import Annotated
from pydantic.v1 import BaseModel, StrictStr, StrictInt, StrictBool, StrictFloat, StrictBytes, Field, validator, ValidationError, conlist, constr
from datetime import datetime
[docs]
class AccountingMethod(str, Enum):
"""
AccountingMethod
"""
"""
allowed enum values
"""
DEFAULT = 'Default'
AVERAGECOST = 'AverageCost'
FIRSTINFIRSTOUT = 'FirstInFirstOut'
LASTINFIRSTOUT = 'LastInFirstOut'
HIGHESTCOSTFIRST = 'HighestCostFirst'
LOWESTCOSTFIRST = 'LowestCostFirst'
PRORATEBYUNITS = 'ProRateByUnits'
PRORATEBYCOST = 'ProRateByCost'
PRORATEBYCOSTPORTFOLIOCURRENCY = 'ProRateByCostPortfolioCurrency'
INTRADAYTHENFIRSTINFIRSTOUT = 'IntraDayThenFirstInFirstOut'
LONGTERMHIGHESTCOSTFIRST = 'LongTermHighestCostFirst'
LONGTERMHIGHESTCOSTFIRSTPORTFOLIOCURRENCY = 'LongTermHighestCostFirstPortfolioCurrency'
HIGHESTCOSTFIRSTPORTFOLIOCURRENCY = 'HighestCostFirstPortfolioCurrency'
LOWESTCOSTFIRSTPORTFOLIOCURRENCY = 'LowestCostFirstPortfolioCurrency'
MAXIMUMLOSSMINIMUMGAIN = 'MaximumLossMinimumGain'
MAXIMUMLOSSMINIMUMGAINPORTFOLIOCURRENCY = 'MaximumLossMinimumGainPortfolioCurrency'
[docs]
@classmethod
def from_json(cls, json_str: str) -> AccountingMethod:
"""Create an instance of AccountingMethod from a JSON string"""
return AccountingMethod(json.loads(json_str))