class AbstractSection extends VerticalLayout {

    @Override
    public void setCaption(@CheckForNull String caption) {
        captionLabel.setValue(caption);
        captionLabel.setVisible(!StringUtils.isEmpty(caption));

        updateHeader();
    }

    public  AbstractSection(@CheckForNull String caption);
    public  AbstractSection(@CheckForNull String caption, boolean closeable);
    @Deprecated public  AbstractSection(@CheckForNull String caption, boolean closeable, Optional<Button> editButton);

}