from abc import ABCMeta, abstractmethod

from ._Report import Report


class Formatter(object):
    __metaclass__ = ABCMeta

    @abstractmethod
    def format(
        self,       # type: Formatter
        report,     # type: Report
    ):
        # type: (...) -> bytes

        raise NotImplementedError()

    def format_mobile(
        self,       # type: Formatter
        report,     # type: Report
    ):
        # type: (...) -> bytes

        raise NotImplementedError()
