from typing import (
    Any,
    Dict,
    List,
)


class ReturnAttributes(object):

    def __init__(
        self,                    # type: ReturnAttributes
        custom_properties=None,  # type: List[str]
    ):
        # type: (...) -> None

        self.custom_properties = custom_properties or []

    def to_json(
        self,   # type: ReturnAttributes
    ):
        # type: (...) -> Dict[str, Any]

        return {
            "customProperties": self.custom_properties,
        }

    @staticmethod
    def from_json(
        data,   # type: Dict[str, Any]
    ):
        # type: (...) -> ReturnAttributes

        return ReturnAttributes(
            custom_properties=data.get("customProperties", []),
        )
