This interface is implemented by clients that use Decoration. Unfortunately, interface methods have to public; ideally these would be package-private.