# This file was generated by liblab | https://liblab.com/

from .utils.json_map import JsonMap
from .base import BaseModel


@JsonMap({})
class CostQuote(BaseModel):
    """CostQuote

    :param name: Cost's name, defaults to None
    :type name: str, optional
    :param currency: Currency code., defaults to None
    :type currency: str, optional
    :param total: Total cost in local currency, defaults to None
    :type total: float, optional
    :param total_usd: Total cost in USD, defaults to None
    :type total_usd: float, optional
    """

    def __init__(
        self,
        name: str = None,
        currency: str = None,
        total: float = None,
        total_usd: float = None,
    ):
        if name is not None:
            self.name = name
        if currency is not None:
            self.currency = self._pattern_matching(currency, "^[A-Z]{3}$", "currency")
        if total is not None:
            self.total = total
        if total_usd is not None:
            self.total_usd = total_usd
