class KieEnumSelectElement implements IsElement {

    @SuppressWarnings("unchecked")
    public void setup(final T[] values,
                      final T initialValue,
                      final Consumer<T> onChange) {

        componentType = (Class<T>) values.getClass().getComponentType();

        view.setupKieSelectElement(buildOptions(values),
                initialValue.name(),
                name -> onChange.accept(toEnum(name)));
    }

    @Inject public  KieEnumSelectElement(final View view,
                                final KieSelectElement kieSelectElement,
                                final TranslationService translationService);

}