from typing import Optional

from ._OrderPicture import OrderPicture
from ._TablePicture import TablePicture
from ._PaymentPicture import PaymentPicture


class Order(object):
    def __init__(
        self,
        store_id,             # type: str
        order_info,           # type: dict
        table_info=None,      # type: Optional[dict]
        payment_info=None,    # type: Optional[dict]
    ):
        # type: (...) -> None

        self.order_picture = OrderPicture(
            store_id=store_id,
            order_info=order_info,
        )
        self.table_picture = TablePicture(
            store_id=store_id,
            table_info=table_info,
        )
        self.payment_picture = PaymentPicture(
            store_id=store_id,
            payment_info=payment_info,
        )

