CBSE supports a variety of encapsulation types,
ranging from white box exposing all the implementation,
or gray box exposing parts of component implementation to black box.
In the cases of white box and gray box,
the component clients have the flexibility to make modifications to the component in order to meet specific needs in their solutions.