{notice}

{warning}

from typing import Union
from pyAyiin import raw
from pyAyiin.raw.core import TLObject

{name} = Union[{types}]


# noinspection PyRedeclaration
class {name}:  # type: ignore
    """{docstring}
    """

    QUALNAME = "pyAyiin.raw.base.{qualname}"

    def __init__(self):
        raise TypeError("Base types can only be used for type checking purposes: "
                        "you tried to use a base type instance as argument, "
                        "but you need to instantiate one of its constructors instead.")
