"""Autogenerated file: DO NOT EDIT!"""
import typing  # noqa: F401
from dazzler.system import Component, Aspect, UNDEFINED  # noqa: F401


class CodeBlock(Component):
    """
    A block of code to highlight.

    Wrapper of ``prism-react-renderer``.

    :CSS:

         ``dazzler-markdown-code-block``
    """
    _aspect_keys = []
    _children = []
    value = Aspect(required=True, children=True, docstring="The code to render")  # noqa: E501
    language = Aspect(required=True, docstring="Language to render")
    style = Aspect()
    class_name = Aspect()

    def __init__(
            self,
            value: typing.Union[str, int, float, Component, typing.List[typing.Union[str, int, float, Component]]],  # noqa: E501
            language: str,
            style: typing.Optional[typing.Dict] = UNDEFINED,
            class_name: typing.Optional[str] = UNDEFINED,
            identity: str = None
    ):
        """
        :param value: The code to render
        :param language: Language to render
        :param style:
        :param class_name:
        """
        Component.__init__(self, locals(), identity)
