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


class RadioList(Component):
    """
    A radio button list where only a single value can be selected.
    """
    _aspect_keys = []
    _children = []
    options = Aspect(required=True, docstring="Items in the radio list with labels, values and elements attributes.")  # noqa: E501
    value = Aspect(docstring="Selected radio button.")
    style = Aspect(docstring="Style object of the container.")
    class_name = Aspect(docstring="Class name of the container.")
    labels_class_name = Aspect(docstring="Global class name to give to labels.")  # noqa: E501
    labels_style = Aspect(docstring="Global labels style objects.")
    options_class_name = Aspect(docstring="Global options class name.")
    options_style = Aspect(docstring="Global style object of options.")
    id = Aspect(docstring="Html id of the component, otherwise the identity is used.")  # noqa: E501

    def __init__(
            self,
            options: typing.List[typing.Dict[str, typing.Union[str, typing.Union[str, typing.Union[float, int]]]]],  # noqa: E501
            value: typing.Optional[typing.Union[str, typing.Union[float, int]]] = UNDEFINED,  # noqa: E501
            style: typing.Optional[typing.Dict] = UNDEFINED,
            class_name: typing.Optional[str] = UNDEFINED,
            labels_class_name: typing.Optional[str] = UNDEFINED,
            labels_style: typing.Optional[typing.Dict] = UNDEFINED,
            options_class_name: typing.Optional[str] = UNDEFINED,
            options_style: typing.Optional[typing.Dict] = UNDEFINED,
            id: typing.Optional[str] = UNDEFINED,
            identity: str = None
    ):
        """
        :param options: Items in the radio list with labels, values and
            elements attributes.
        :param value: Selected radio button.
        :param style: Style object of the container.
        :param class_name: Class name of the container.
        :param labels_class_name: Global class name to give to labels.
        :param labels_style: Global labels style objects.
        :param options_class_name: Global options class name.
        :param options_style: Global style object of options.
        :param id: Html id of the component, otherwise the identity is
            used.
        """
        Component.__init__(self, locals(), identity)
