from ipywidgets import (
    Widget, DOMWidget, widget_serialization, register
)
from ipywidgets.widgets.trait_types import TypedTuple
from traitlets import (
    Unicode, Int, CInt, Instance, ForwardDeclaredInstance, This, Enum,
    Tuple, List, Dict, Float, CFloat, Bool, Union, Any,
)
from ..basewidget import BaseWidget
{% for import in imports %}
from {{ import['module'] }} import {{import['import_name']}}
{%- endfor %}

class {{class_name}}(BaseWidget):
    """ 
:warning: **Autogenerated class**

{{desc}}
    """

    def __init__(self, **kwargs):

        super().__init__(**kwargs)  
    
    _model_name = Unicode("{{ model_name }}").tag(sync=True)
    {% for trait in traits %}
    {{ trait }}
    {% endfor %}
        

