In the below example, the columns can be hidden / shown using checkboxes in the header dropdown menu.
There are 3 important column properties which help customise the header menu:
menuInClose: Used for grouped columns, it states the initial open or close state of grouped column parents in menu.
menuInDisable: Checbkox is in disabled state so show hide state of this column can't be changed in header menu e.g., CustomerName and ShippedDate column.
menuInHide: This makes the column hidden in header menu. Obviously its show hide state can't be changed in header menu e.g., keepHidden column.