import json

from . import items

## \brief Extended JSON encoder object to handle seagull-specific items.
#  \internal
class JSONizer(json.JSONEncoder):
    def default(self, obj):
        if isinstance(obj, items.TickItem):
            return {"resource": obj.resource, "amount": obj.amount, "desc": obj.desc}
        else:
            # if no encoding here, fall back to stdlib
            return super().default(obj)