from httpmessageprocessorutil.automapped import auto_map
from typing import Optional


@auto_map({"system_api_key": {"name": "X-Api-Key", "location": "header", "type": str},
           "pos_id": {"name": "posId", "type": str},
           "language": {"name": "language", "type": Optional[str]},
           "coupon_code": {"name": "couponCode", "type": str}})
class ApplyCouponRequest(object):
    def __init__(
        self,
        system_api_key,     # type: str
        pos_id,             # type: str
        coupon_code,        # type: str
        language,           # type: str
    ):
        # type: (...) -> None

        self.system_api_key = system_api_key
        self.pos_id = pos_id
        self.language = language
        self.coupon_code = coupon_code
