from typing import Optional
from validator_collection import validators
from highcharts_core import constants
from highcharts_core.metaclasses import HighchartsMeta
[docs]class LegendLanguageOptions(HighchartsMeta):
    """Language options for the legend when used in accessibility mode."""
    def __init__(self, **kwargs):
        self._legend_item = None
        self._legend_label = None
        self._legend_label_no_title = None
        self.legend_item = kwargs.get('legend_item', None)
        self.legend_label = kwargs.get('legend_label', None)
        self.legend_label_no_title = kwargs.get('legend_label_no_title', None)
    @property
    def legend_item(self) -> Optional[str]:
        """Defaults to ``'Show {itemName}'``.
        :rtype: :class:`str <python:str>` or :obj:`None <python:None>`
        """
        return self._legend_item
    @legend_item.setter
    def legend_item(self, value):
        self._legend_item = validators.string(value, allow_empty = True)
    @property
    def legend_label(self) -> Optional[str]:
        """Defaults to ``'Chart legend: {legendTitle}'``.
        :rtype: :class:`str <python:str>` or :obj:`None <python:None>`
        """
        return self._legend_label
    @legend_label.setter
    def legend_label(self, value):
        self._legend_label = validators.string(value, allow_empty = True)
    @property
    def legend_label_no_title(self) -> Optional[str]:
        """Defaults to ``'Toggle series visibility, {chartTitle}'``.
        :rtype: :class:`str <python:str>` or :obj:`None <python:None>`
        """
        return self._legend_label_no_title
    @legend_label_no_title.setter
    def legend_label_no_title(self, value):
        self._legend_label_no_title = validators.string(value, allow_empty = True)
    @classmethod
    def _get_kwargs_from_dict(cls, as_dict):
        kwargs = {
            'legend_item': as_dict.get('legendItem', None),
            'legend_label': as_dict.get('legendLabel', None),
            'legend_label_no_title': as_dict.get('legendLabelNoTitle', None),
        }
        return kwargs
    def _to_untrimmed_dict(self, in_cls = None) -> dict:
        untrimmed = {
            'legendItem': self.legend_item,
            'legendLabel': self.legend_label,
            'legendLabelNoTitle': self.legend_label_no_title
        }
        return untrimmed